開いているページのタイトルと URL をクリップボードにコピーするブックマークレット
Twitter 投稿やメール送信用に、開いているページのタイトルと URL をコピーしたいことがあったので作った。
いきなりだがブックマークレットは以下のとおり。
javascript:((d,e)=>{e=d.createElement('textarea');e.textContent=d.title+' '+d.URL;d.body.appendChild(e);e.select();d.execCommand('copy');d.body.removeChild(e)})(document);
セルフ Uglify したもので、圧縮前のコードはこんな感じ。
((d, e) => {
e = d.createElement('textarea');
e.textContent = d.title + ' ' + d.URL;
d.body.appendChild(e);
e.select();
d.execCommand('copy');
d.body.removeChild(e);
})(document);
テキストエリアを作り、そこにコピーしたい文字列を書いておく。一度ページに埋め込んだら、テキストエリアを選択してコピーし、要素を削除して終わり。
document.execCommand('copy')
は、コピーに成功すると true
を返すので、戻り値をチェックして処理を変えたりしても良いだろう。