2012-02-08 42 views
1

我使用Ariel Flesler's awesome scrollto plugin。但我想,以確定該插件已經完成滾動。我的頁面上的滾動速度設置爲800。我怎樣才能做到這一點?如何確定何時jQuery.ScrollTo完成平滑滾動

我已經試過:

 isScrolling = true; 
     jQuery(listWrapper).scrollTo(theId, 800); 
     isScrolling = false; 

但它好像在滾動完成之前isScrolling = false被設定。

我有一些JavaScript連接到scrollto事件除了這一點。滾動減慢到一個痛苦的速度,因爲它試圖做平滑滾動和運行在同一時間的滾動事件。我希望,而它的滾動,有效地禁用滾動事件,並重新啓用它,當滾動完成。

回答

3

插件具有被稱爲當動畫結束回調函數:

onAfter: A function to be called after the whole animation ended. 
+0

我沒有看到,在文檔中哈哈。謝謝! @Sorin S. – Hoppe 2012-02-08 15:13:48

0

假設你正在使用this scrollTo plugin,有一個onAfter選項,需要一個功能,一旦滾動完成執行。

2

使用onAfter滾動結束後觸發的事件,也是scrollTo插件的第三個參數作爲回調函數。嘗試這個。

isScrolling = true; 
    jQuery(listWrapper).scrollTo(theId, 800, function(){ 
     isScrolling = false; 
    }); 
+0

感謝您的示例代碼! @ShankarSangoli – Hoppe 2012-02-08 15:14:13

+0

很好的解決方案.. – Farhan 2013-02-23 09:38:39