我正在使用 jQuery .animate 来单击滚动到页面的某个部分。我有 3 次,1 次用于滚动回顶部(工作正常),1 次用于滚动到第 2 节(工作正常)和 1 次用于滚动到第 3 节。
当滚动到第 3 部分(页面底部)时,它似乎比定义的时间更快地完成。所以最终发生的是它直接滚动到底部,但它仍在运行,所以你不能再次向上滚动,直到时间过去。
它运行的站点是 new.pudle.co.uk(尝试单击“获取联系”以查看实际问题)
我正在使用的 jQuery 代码是:
// JavaScript Document
$(document).ready(function() {
$('.proj-tile').click(function() {
if($(window).scrollTop() >= 300) { //has scrolled considerably to animate
$('html, body').animate({ scrollTop: '+0' }, 1200);
}
});
$('#a-u').click(function() {
$('html, body').animate({ scrollTop: '+800' }, 1200);
});
$('#c-u').click(function() {
$('html, body').animate({ scrollTop: '+1500' }, 3000);
});
});