这是一个小提琴--- http://jsfiddle.net/mFrbA/2/
这只是对下面代码的测试。我试图让它一直向下滚动,缓慢而稳定。我不只是通过直接滚动到文档底部以直接方式执行它的原因是因为我想以增量方式执行它,同时让用户有机会取消它(因此变量scrolling
,可以切换通过外部函数。
变量的原因wait
是(理论上)防止 while 循环比动画循环得更快——我不确定它是否会等待动画完成后再重新开始。但是完整的函数永远不会被调用,动画从一开始就不会发生。
但是,这些都没有执行。我不确定我做错了什么。
$(function() {
scrolling = true;
while (scrolling) {
var wait = true;
$('html, body').animate(
{ scrollTop: '+=50' },
{ duration: 800,
easing: 'linear',
complete: function(){
alert("hi again");
wait = false;}
}
);
while(wait) {
console.log("waiting");
}
}
});