我使用下面的代碼:FireFox擴展:如何通過jQuery訪問頁面元素?
var myExtension = {
init: function() {
// The event can be DOMContentLoaded, pageshow, pagehide, load or unload.
if(gBrowser) gBrowser.addEventListener("DOMContentLoaded", this.onPageLoad, false);
},
onPageLoad: function(aEvent) {
var doc = aEvent.originalTarget; // doc is document that triggered the event
var win = doc.defaultView; // win is the window for the doc
//alert("page is loaded \n" +doc.location.href);
// alert(doc.location.href.indexOf("facebook.com"));
if(doc.location.href.indexOf("facebook.com") == -1)
{
return;
}
alert("we are here");
alert($("#blueBar").html());
}
}
window.addEventListener("load", function load(event){
window.removeEventListener("load", load, false); //remove listener, no longer needed
myExtension.init();
},false);
它一直給undefined
錯誤
你可以對這個錯誤更具體?它是否提到未定義的變量或函數? –
當我警告_ $('#bluebar')_它給** [對象] **,但是當我把它稱爲_html()_方法時,它說未定義。 – Volatil3
並且Facebook總是有一個id = blueBar的元素,它在onPageLoad觸發前完全加載?嘗試通過開發人員工具(如螢火蟲)查看元素以確保其存在。如果是這樣,元素可能會在頁面後加載。 –