我正在使用一些來自www.css-tricks.com的代碼,可用於爲本地滾動頁面錨點設置動畫。以下是代碼片段:jQuery:錨點滾動跳躍
$("class-name-here").on("click", function() {
var $target = $(this.hash);
$target = $target.length && $target
|| $('[name=' + this.hash.slice(1) +']');
if ($target.length) {
var targetOffset = $target.offset().top;
$('html,body')
.animate({scrollTop: targetOffset}, 1500, "easeOutQuint");
return false;
}
});
我一直利用各種時間的動畫時間嘗試過,但是當我點擊鏈接時,頁面不正確地滾動,但滾動到達目的地後,動畫繼續。 換句話說,它會滾動,但在動畫似乎完成後,如果您嘗試手動滾動,則頁面會再次爲該位置自動生成約半秒的動畫。
這段代碼有什麼問題/有沒有人看過這個?
儘量減少時間的動畫。 1.5秒的時間太長,如果嘗試從這裏滾動出來時沒有結束,則動畫會嘗試完成,因爲您處於每個時刻的位置。所以嘗試使用'animate({scrollTop:targetOffset},250,「easeOutQuint」);' –
嘗試'slow'而不是1500.我認爲slow是獲得平滑動畫的最佳數量。 – tR4xX