ブックマークレットでURLとページタイトルを含んだaタグを生成

webページのタイトルとURLをブックマークレットで簡単コピーしたい。

Safariの更新により、自作拡張機能が使えなくなったため。

ブックマークレットなら基本的にはブラウザを問わず使用できるため利便性も高いと思う。

ブックマークレットは作ったことがないので、Bookmarkletの作り方 - catch.jp-wikiを参考にした。

新規タブでも現在のタブでもどちらでも開けるようにするため、2通りの<a>タグを用意することにした。 <textarea>が2つなのでポップアップウィンドウでなく、新規タブ(ウィンドウ)を開くようにし、Closeボタンを設置した。ソースは次のようなもの。

javascript:(function(){
var f=function(s,t){
var d=window.open().document;
d.write("<h3>href</h3>"+"<textarea rows=5 cols=60>"+s+"</textarea>"+"<h3>href target=\"_blank\"</h3>"+"<textarea rows=5 cols=60>"+t+"</textarea><br>");
d.write("<button onclick=\"window.close()\" autofocus>Close</button>");
d.close();
};
var s="<a href=\""+location.href+"\">"+document.title+"</a>";
var t="<a href=\""+location.href+"\" target=\"_blank\">"+document.title+"</a>";
f(s,t);
})();

使い方

適当なページをブックマークし、そのブックマークを編集し、アドレス部分を上のソースにコピペすればいい。 Safariでは、空白と改行を自動的に置き換えてくれるが、他のブラウザでは、自動置換をしてくれないかもしれない。

その時は、改行を削除して、ソースの半角スペースを%20に変更すればいい。

タイトルとURLをコピーしました