Qiitaの記事を知人、友人に紹介する時がありますよね?
そんな時twitterなどではなくメールで送信する際に使えるかと思い、作成しました。
実行すると小さなテキストエリア付きウィンドウが出てきて、テキストエリアをクリックすると全選択できます。
右側に削除ボタンがあるのでウィンドウはそこをクリックし削除してください。
即時関数の中なのでtextNodeを使わず、innerHTMLを使っていたり、
内部で作成したelementに対してイベントリスナー等を使わずにそのままイベントをつけていたりします。
以下のコードをブックマークする事で使用できます。
javascript:void (function (document){
var _url=location.href;
if(_url.split("/")[4]!="items"){return;}
_url=_url.split("?")[0] || _url;
var _title=document.getElementsByTagName("h1")[0].innerHTML;
var _body=document.body || document.getElementsByTagName("body")[0];
var _window=document.createElement("div");
_window.setAttribute("style","z-index: 9999;position: fixed;top: 0px;bottom: 0px;left: 0px;right: 0px;width: 50%;height: 50%;margin: auto;padding: 1%;border-radius: 5px;background: #666;");
var _closeButton=document.createElement("div");
_closeButton.setAttribute("style","z-index: 9999;position: absolute;width: 5%;height: 100%;top: 0px;right: 0px;background: #f93;text-align: center;border-radius: 5px;font-size: 150%;cursor: pointer;");
_closeButton.onclick=function (){
var _parent=this.parentNode;
_body.removeChild(_parent);
};
_closeButton.onmouseover=function (){
this.style.backgroundColor="#fa6";
this.style.color="#666";
};
_closeButton.onmouseout=function (){
this.style.backgroundColor="#f93";
this.style.color="#000";
};
var _closeButtonIcon=document.createElement("p");
_closeButtonIcon.setAttribute("style","position: absolute;top: 0px;bottom: 0px;left: 0px;right: 0px;height: 1em;width: 1em;margin: auto;padding: 0;font-weight: bold;user-select: none;");
_closeButtonIcon.innerHTML="×";
_closeButton.appendChild(_closeButtonIcon);
var _textArea=document.createElement("textarea");
_textArea.innerHTML=_title+"\r\n"+_url;
_textArea.setAttribute("style","width: 95%;height: 100%;padding: 1%;text-align: center;border-radius: 5px;border: none;resize: none;");
_textArea.onfocus=function (){
this.select();
};
_window.appendChild(_textArea);
_window.appendChild(_closeButton);
_body.appendChild(_window);
}(document));
思いついてガリガリ書いたものの使うことあるのだろうか……?
追記:
GreaseMonkeyスクリプトにもしてみた
Qiitaの記事タイトルとURLを楽にコピーするブックマークレットをGreaseMonkeyスクリプトにしてみた
更に追記:
マークダウン記法のコピーとEscキーで閉じる機能が追加されました
Qiitaの記事タイトルとURLを楽にコピーするブックマークレットを改良してみた