はてなフォトライフの画像を外部のblogに簡単に貼れるように画像へのurlを表示されるユーザスクリプト ーその2ー
[id:sanbo-n:20080508:1210242770]で紹介されていたのでちょっと体裁を整えた
コピーしたいテキストボックスの上でトリプルクリックで全選択してコピペして使ってください
titleやaltに"by ユーザ名,on Hatenafotolife"的な文言を付けようかと思ったけれどどうせ直すと思うのでやめました
ソース
// ==UserScript== // @name fotolife img src disp // @namespace http://d.hatena.ne.jp/natu_n/ // @include http*://f.hatena.ne.jp/* // ==/UserScript== ( function(){ var BASE = 'http://f.hatena.ne.jp'; var PREFIX = '<img src="http://f.hatena.ne.jp'; var SUFFIX = '">' var nodes, img, src, ttl; nodes = getElementsByClassName(document.body, 'foto-body'); if (nodes[0]) { if (img = nodes[0].getElementsByTagName("img")[0] || null) { src = img.getAttribute("src"); ttl = img.getAttribute("title"); var df = document.createDocumentFragment(); var div = document.createElement("div"); div.style.textAlign = "right"; var tb = document.createElement("input") tb.setAttribute("type", "textbox"); tb.setAttribute("value", BASE + src); div.appendChild(document.createTextNode("Direct URL:")); div.appendChild(tb); tb = document.createElement("input") tb.setAttribute("type", "textbox"); tb.setAttribute("value", PREFIX + src + SUFFIX); div.appendChild(document.createElement("br")); div.appendChild(document.createTextNode("image:")); div.appendChild(tb); tb = document.createElement("input") tb.setAttribute("type", "textbox"); tb.setAttribute("value", "<a href=" + location.href + ">" + PREFIX + src + SUFFIX + "</a>"); div.appendChild(document.createElement("br")); div.appendChild(document.createTextNode("Embed:")); div.appendChild(tb); df.appendChild(div); nodes[0].appendChild(df); } } function getElementsByClassName(node, classname) { var a = []; var re = new RegExp('\\b' + classname + '\\b'); var els = node.getElementsByTagName("*"); for(var i=0, j=els.length; i<j; i++) if(re.test(els[i].className))a.push(els[i]); return a; } })();