我需要区分代码所做的滚动和用户所做的滚动。这就是我想要做的:
window.auto_scrolling = true;
$('html, body').animate({
scrollTop: $(document).height()-$(window).height()},
{duration: 500, easing: 'swing', done: function(e) {
window.auto_scrolling = false;
}}
);
然而,尽管在 done 函数中设置为 false,window.auto_scrolling 在 $(window).scroll 事件处理程序捕获的最后一个事件中为 false。
这是一个显示我的问题的 JS 小提琴:http: //jsfiddle.net/uLq9X/