2009-10-01 34 views
2

我設法得到了一個在Firefox中運行的自定義非常基本的擴展。如何從Firefox擴展訪問網頁數據?

我想下一步要做的是:

  1. 檢查,如果用戶是在所需網頁
  2. 如果是:檢查每個投遞的頁面包含一個
  3. 一個隱藏的元素
  4. 如發現:與參數啓動外部應用程序

我有一些經驗JavaScript在網頁上,但我不知道如何註冊我的腳本在Firefox中打開的每個網頁上運行,以及如何訪問頁面內的元素。

提示,從哪裏開始,將不勝感激......

編輯:我想出如何在每個頁面上運行我的代碼:

addEventListener("DOMContentLoaded", doSomething, false); 

EDIT2 :我可以在處理程序中使用event.originalTarget訪問頁面數據,並使用Components.interfaces.nsIProcess運行應用程序

+0

好運與您的FF開發一個簡單的拿! – 2009-10-06 10:37:08

回答

2

那麼剩下的是DOM遍歷和外部程序啓動。

您的DOM遍歷可以通過很多方式完成。然而,這裏是

var inputs = document.getElementsByTagName("input"); 
for (var idx=0; idx<inputs.length; idx++){ 
    var tp = inputs[idx].attributes['type'].value 
    console.log(tp); 
    if (tp == 'hidden'){ 
     // grab your text at here and launch the app. 
    } 
} 

外部應用程序啓動根據本post

var file = Components.classes["@mozilla.org/file/local;1"] 
        .createInstance(Components.interfaces.nsILocalFile); 
file.initWithPath("c:\\myapp.exe"); 
file.launch();