Jes*_*sse 10 javascript queue jquery animation
我一直在使用jQuery的stop(true, true)方法来清除正在运行的动画,以便下一个立即启动.我注意到第一个参数clearQueue清除了整个动画队列,但第二个参数jumpToEnd只跳转到当前运行动画的末尾,而不是从队列中删除的动画.有没有办法让它清晰并跳到所有排队动画的结尾?
我最终链接了几个stop(false, true)调用,但这只会处理3个排队的动画,例如.
$(this)
.stop(false, true)
.stop(false, true)
.stop(false, true)
.addClass('hover', 200);
Run Code Online (Sandbox Code Playgroud)
编辑:
stopAll根据Ates Goral的回答,我最终添加了自己的方法:
$.fn.extend({ stopAll: function () {
while (this.queue().length > 0)
this.stop(false, true);
return this;
} });
Run Code Online (Sandbox Code Playgroud)
$(this).stopAll().addClass('hover', 200);
Run Code Online (Sandbox Code Playgroud)
我希望其他人觉得这很有用.
链接多个stop(false, true)是有道理的.您可以检查队列长度,而不是对固定数量的链式调用进行硬编码:
while ($(this).queue().length) {
$(this).stop(false, true);
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
8610 次 |
| 最近记录: |