種別[software] cocolog:10284907
セクションJRF のソフトウェア Tips
日時2006年03月01日 19:46:57
元URLhttp://jrf.cocolog-nifty.com/software/2006/03/post.html
タグ[Firefox]

DDwin.js をダブルクリックで呼べるようにする

Firefox の拡張に DictionaryTip があります。ダブルクリックすると goo 辞書などを引いてミニウィンドウを出してくれるものです。同じようなことを《DDwin.js》を用いてやるには、JSActions のスタートアップスクリプトを可能にして、そのスクリプト内で、イベントリスナーにダブルクリックに対して DDwin.js を呼ぶよう登録するだけです。

  0.すでに firefox_jsa/selection/DDwin.js があるとします。
  1.JSActions の設定で Enable Startup Script のチェックボックスを on にします。
  2.firefox_jsa/startup というフォルダを作ります。
  3.そこに次のような DDwin-by-Dblclick.js を置きます。
    
以上でできるようになるはずです。

// DDwin をダブルクリックで起動。
// firefox_jsa/selection/DDwin.js を呼ぶ。

if (document && "addEventListener" in document) {
      document
          .addEventListener("dblclick", function (e) {
              if (/* e.ctrlKey && */ e.button == 0) {
                  var scrList = JsActions.getScriptList("selection");
                  for (var i in scrList) {
                      var scr = scrList[i];
                      if (scr.path.match(/DDwin.*\.js$/i)) {
                          JsActions.execScript(scr.path, scr.uri, e);
                          e.stopPropagation();
                          break;
                      }
                  }
              }
          }, true);
}

selection/DDwin.js がなく、Button/70_NL_DDwin.js のみがある場合は、もちろん、selection/DDwin.js を置くか、上の JsActions.getScriptList("selection") を JsActions.getScriptList("Button") に換えれば OK です。

更新:06/03/01
初公開:2006年03月01日 19:47:02
最新版:2006年03月04日 07:49:55