2012-09-24 106 views
5

可能重複:
Javascript: do an action after user is done scrolling如何知道Scroll事件已經使用jQuery完成

Scroll事件觸發當用戶開始滾動頁面,對不對?如何知道他是否完成了?我想在滾動完成後調用一個函數。有沒有人有任何想法?

謝謝!

P.S.用jQuery請,但純JS也行。

+0

否。每當頁面移動一個像素時,會發生'scroll'事件。退房[火滾動事件每秒只有一次](http://stackoverflow.com/q/9613594/1048572) – Bergi

+0

@FrançoisWahl我不想使用$ .doTimeout – Mahdi

+0

@Bergi謝謝,但你有任何參考爲了那個原因?它似乎只是當你開始滾動時,而不是連續發生... – Mahdi

回答

8

您可以使用setTimeout來實現此目的。您可以根據您的要求更改超時值(即時使用100)。

var timeoutId; 
$(selector).scroll(function(){ 
    if(timeoutId){ 
     clearTimeout(timeoutId); 
    } 
    timeoutId = setTimeout(function(){ 
    // your code 
    }, 100); 

}); 
+0

謝謝,有沒有其他的方式,除了設置超時?我的意思是本地和本來是什麼東西? – Mahdi

+1

超時*是*本機,它不是任何插件 –

+0

@Mahdi此刻沒有。 – Christoph

相關問題