Safari, Chromeで右クリックのメニューからリンク先URLを取得するAutomatorワークフロー
Chrome Canaryでwebページを見ている時に、リンク先をCanaryではなく通常版のChromeで開きたい案件が発生した
右クリックのサービスの中に「URLを開く」というものがあり、それでいけるかと思っていたのだが選択した文字列をそのまま規定のブラウザに送るというクソ仕様だった
(http://fuga.com/みたいになってると http://fuga.com/ に飛ばされる!)
そこで自作のサービスでなんとかしようと思い色々やって下記のコードに落ち着いた
JavaScriptでワークフロー書けるとか全然知らなかった(そもそもAutomatorすら触ったことなかったけど)
そしてそっからさらにブラウザで任意のJavaScriptを実行できるなんて・・・
function run(input, parameters) {
var app = Application("Google Chrome Canary");
app.includeStandardAdditions = true;
var url = app.windows[0].activeTab.execute({
javascript: 'window.getSelection().anchorNode.parentNode.href'
});
return url;
}
最終的にこんな感じ
あんまり需要ありそうには思えないけど備忘録も兼ねて
[2015/10/30 13:00 追記]
Safariでやろうと思ったらちょっとコード違った
function run(input, parameters) {
var app = Application("Safari");
app.includeStandardAdditions = true;
var url = app.doJavaScript('window.getSelection().anchorNode.parentNode.href',{
in: app.windows[0].currentTab
});
return url;
}
Author And Source
この問題について(Safari, Chromeで右クリックのメニューからリンク先URLを取得するAutomatorワークフロー), 我々は、より多くの情報をここで見つけました https://qiita.com/wamei/items/158b8104ef30a356caf4著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .