2010-03-07 84 views
2
$(Constants.Selectors.Submit_Button).bind('click', function() { 
    GM_log('Event run: id = ' + this.id + ' self = ' + this); 
}); 

上面的代碼似乎當點擊事件被原稿觸發運行控制檯輸出是這樣的(或以其他方式的一些其他所有頁無所不包元件或一組元件。): 腳本:事件運行:ID = undefined self = [object XPCNativeWrapper [object HTMLDocument]]jQuery + Greasemonkey,Click事件不會觸發正確的元素?

選擇器是一個簡單的字符串「#buttonID」,其中buttonID被顯着模糊處理(我確信沒有名稱衝突)並且是HTML表單的一部分注入頁面。 (即屬性「type」設置爲「button」的輸入元素)。

有誰知道這可能是爲什麼?我對這件事毫無頭緒。

回答

0

你正在使用什麼樣的jQuery版本? 自從我在GM上場之後已經有一段時間了,但是我發現了我的代碼,它是在1.3.2下完成的,只要點擊功能處於文檔準備就緒狀態,它仍然適用於我。

var $jq = jQuery.noConflict(); 

$jq(function(){ 
    $jq('#buttonID').click(function(){ 
    runCode; 
    }); 
}); 
0

而不是做這樣的事情:從here

var elmLink = document.getElementById('somelink'); 
elmLink.addEventListener("click", my_func, true); 

var elmLink = document.getElementById('somelink'); 
elmLink.onclick = 'my_func(this)'; 

做這樣的事情

相關問題