コンテキストメニュー拡張のカスタムスクリプト第二弾〜。ちなみに第一弾は6月14日の「JavaScriptで画像リサイズ」ですヨ。僕は2ちゃんねるはわりと見てる(よく見るのは新Mac板、ライトノベル板あたり)のですが、リンクがime.nuに飛ばされるのが困りもの。URIを単なる文字列にしてくれればいいものを! そんなわけでリンクを開く時はURIを選択してコンテキストメニュー拡張のOpen as URIで開いていたのですが、ふと思い立ってカスタムスクリプトでリンクを書き換えられないかといろいろやってみました。ああでもない、こうでもないとJavaScript Panelに打ち込んで何度もMozillaを無限ループに叩き落としつつもなんとかそれっぽく完成したのが下の関数です。
処理の内容はA要素の配列を取得してひとつずつhrefアトリビュートをチェックして「ime.nu/」を削除して戻すというもの。このスクリプトをExtensions→Preferences→Custom Scriptのテキストエリアに貼り付けて、New Settingを適当に書き換えて(del_ime.nuとかなんとかお好きなように)Add/Updateをクリックで作業完了です。「Execute this script Automatically when documents are loaded」にチェックを入れるとページを読み込んだ時に自動で実行されそうな気もするんですが、うちではそういう風には動いてくれませなんだ。そんなわけで、2chのスレを開いたらコンテキストメニューからCustom Scripts→del_ime.nuでスクリプトを実行すればURIからさっくり「ime.nu/」を削ってくれます。
var linkObj = getBrowser().contentDocument.getElementsByTagName('A'); var m = linkObj.length; while (m) { var url = linkObj[m-1].getAttribute('href'); if (url) { url = url.replace(/ime.nu\//,''); linkObj[m-1].setAttribute('href',url); } m = m-1; }
[del_ime.nu JavaScript]
……JavaScriptの基本もよくわかってない素人さんが作ってますので、変な動作をしても笑って許してやってくださいね?