2016-03-20 36 views
0

我有一個頁面,所有的內容都在一個頁面中,並點擊導航欄上的鏈接做滾動動畫到相關部分。典筆是http://codepen.io/meek/pen/NNprYb?editors=0010中斷滾動到動畫

我用下面的代碼滾動動畫:

$('a[href*=#]:not([href=#])').click(function() { 

    var target = $(this.hash); 

    if (target.length) { 
     $('html, body').animate({ 
     scrollTop: target.offset().top 
     }, 1000); 
     return false; 
    } 
    }); 

我的問題是,是否有一種方法可以取消這個動畫,當用戶點擊另一個部分,而該動畫依然播放。目前,它完成了以前的動畫,並將下一個動畫添加到「隊列」中,這意味着如果您點擊垃圾郵件點擊不同的部分,您將無法取消動畫。

回答

0

發現它,只是動畫()之前添加以下代碼:

$('html, body').stop();