IT戦記

プログラミング、起業などについて書いているプログラマーのブログです😚

iKnow の日記の全単語にはてなキーワードみたいなリンクを付ける JavaScript

これって、はてなキーワードみたいに自動でリンクしたいよね><

ってことで書きました!

(のら JS なので Firefox でしか動きません)

var nodes = [];
var result = document.evaluate('id("content_panel_container")//text()[local-name(..) != "A"]', document, null, 6, null);
for (var i = 0; i < result.snapshotLength; i ++) nodes.push(result.snapshotItem(i));

nodes
  .filter(function(t) { return !t.nodeValue.match(/^\s*$/); })
    .map(function(n) {
      var span = document.createElement('span');
      span.innerHTML = n.nodeValue.replace(
                           /([A-Za-z\-]+)/g,
                           '<a href="http://www.iknow.co.jp/item/$1" style="color: #494949">$1</a>');
      n.parentNode.replaceChild(span, n);
    });

注意

リンクの色が変わらないようにしたので、実行しても何も起こってないように感じるかもしれませんが、ちゃんとリンクが貼られると思います><

という訳で、

GreaseMonkeyBookmarklet にお使いください><
ライセンスは Public domain で、つまりどうにでもしてください><