[英]Scroll event is firing after jquery animate function was done
这是例子。
如果您检查控制台,您会注意到在滚动动画过程中多次记录了Scroll Fired
并且一旦完成动画,就会调用回调函数并记录ANIMATION DONE
。 但是,此后又有一个Scroll Fired
日志。
为什么会这样呢? 我该如何预防?
解决问题的方法如下
var child = $('#container');
var onComplete = function () {
completed = true;
console.log('ANIMATION DONE');
};
var completed = false;
child.animate({scrollLeft: 50}, 300, onComplete);
child.scroll(function () {
if (!completed)
console.log('Scroll Fired');
});
我刚刚添加了一个变量,该变量显示动画是否已完成以停止滚动事件代码。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.