2010-05-04 65 views
0

我需要一些建議。我有一個網頁,並希望用greasemonkey腳本和firefox擴展它的功能。在greasemonkey腳本中處理窗口滾動事件

頁面加載時我需要在用戶的頁面滾動期間(使用鼠標滾輪或滾動條)運行自定義函數。我想在用戶向下滾動時顯示一些div塊,並在滾動到頂部時隱藏它。

但我遇到了一些問題 - 我無法將事件處理程序分配給onscroll事件。我使用的代碼的下一個部分:

function showFixedBlock(){ ... } 
function onScrollStart(){ ... showFixedBlock(); ... } 
window.onscroll = onScrollStart; 

我測試這段代碼在我的測試HTML頁面和它的作品,但是當我將其複製到Greasemonkey的,腳本不起作用。

我應該在頁面加載期間分配onscroll事件處理程序嗎?據我所知,當頁面加載時,greasemonkey執行它的腳本?這是問題的原因嗎?

是否有一些額外的要求來處理'onscroll'事件?我怎樣才能做到這一點?

謝謝。

回答

3

我可能是錯的,但我認爲這應該工作:

unsafeWindow.onscroll = onScrollStart; 

window.addEventListener("scroll", onScrollStart, false); 

你真的應該使用後者的例子。