Safari の AppleScript サンプル集です。
Safari でページタイトルと URL をクリップボードにコピーする AppleScript サンプル
———————————————————————-
Safari で最前面に表示しているページの title と URL をクリップボードにコピーする AppleScript のサンプルです。
tell application "Safari"
set ThisURL to do JavaScript "document.URL" in front document
set ThisTitle to do JavaScript "document.title" in front document
set the clipboard to "<a href=\"" & ThisURL & "\">" & ThisTitle & "</a>"
end tell
動作確認:Mac OS 10.4.5 + Safari 2.0.3
Safari のウインドウをリサイズする AppleScript サンプル
———————————————————————-
Safari のウインドウをリサイズする AppleScript です。小物ばっかでスミマセン(笑)
tell application "Safari"
activate
set bounds of window 1 to {800, 22, 1600, 1200}
end tell
動作確認:Mac OS 10.4.4 + Safari 2.0.3 + Script Editor 2.1.1
Safari で複数のサイトを一気に開く AppleScript サンプル
———————————————————————-
Firefox だと起動時にあらかじめ登録しておいた複数サイトをタブで開けるんですが、Safari には、そんな機能は無さげなので、複数のサイトを一気に開く AppleScript を書いてみました。
tell application "Safari"
open location "http://www.yahoo.co.jp/"
open location "http://www.google.co.jp/"
open location "http://www.goo.ne.jp/"
end tell
とりあえず、こんな感じ。
Safari の環境設定で「アプリケーションでリンクを開く場合:現在のウインドウで新規タブに開く」を選択しておかないと、ウインドウが大量に開くかも…。
動作確認:Mac OS 10.4.7 + Safari 2.0.4
Safari で別ウインドウを開いて閉じる AppleScript サンプル
———————————————————————-
別ウインドウを開き、5秒後に違うページを表示して、ウインドウを閉じる AppleScript のサンプルです。
tell application "Safari"
activate
do JavaScript "window.open('http://www.yahoo.co.jp/','test');" in document 1
delay 5
do JavaScript "window.open('http://www.google.co.jp/','test');" in document 1
delay 5
do JavaScript "window.close('test');" in document 1
end tell
動作確認:Mac OS 10.4.5 + Safari 2.0.3
Safari で表示中のページを再読み込み ( リロード ) する AppleScript サンプル
———————————————————————-
Safari で表示中のページを再読み込み(リロード)する AppleScript のサンプルです。
tell application "Safari"
do JavaScript "location.reload(true);" in document 1
end tell
mi で CSS を編集中、右側に確認用として表示している Safari をバックグラウンドでリロードできると便利だなと思って書いてみました。
なんですが、どうもキャッシュから読み込んでいるらしく、新しく編集した CSS は反映されませんでした。HTML なら反映できるんですけど。
動作確認:Mac OS 10.4.5 + Safari 2.0.3