2011-07-19 155 views
0

我想在jquery中構建一些代碼,如果沒有指定像$(document).ready函數那樣的事件或函數,將不起作用。

但在Greasemonkey中使用腳本時,我無法運行代碼,我把它放在$(document).ready函數中。有出路嗎?

$('div').live('blur',function(){ 
//the code goes here 
}); 

那麼上面的代碼工作得很好,但我不想要一個就算了,只想儘快在頁面加載的代碼應該運行。

+0

我只能假設你忘了加上')'上stackoverflo w,否則你會笑自己。 – daryl

+0

@tfbox是啊...只有在stackoverflow ..lol –

+0

你有沒有嘗試過調用** alert()**函數。發生任何錯誤。 – Chandresh

回答

4

$是GM未知的,你需要使用unsafeWindow訪問它:

unsafeWindow.$('div').live('blur',function(){ 
    //the code goes here 
    }); 

(請注意,通常模糊,將不會觸發對DIV元素)

GM-腳本將被執行在DOMContentLoaded(什麼是像jQuery的文檔的準備事件相同)

http://wiki.greasespot.net/DOMContentLoaded

+0

良好的信息,但仍然沒有回答我的問題。其要求通過懸停或點擊等而不需要手動輸入的改變事件。它應該是自動的。 –

+2

看看我的帖子中的鏈接,整個GM腳本將在DOMContentLoaded上執行,這是一個沒有用戶輸入的事件。所以你不需要觀察一個事件,通用已經做到了。 –