在jQuery中即时完成动画队列
我需要停止动画并立即完成所有待处理的动画。停止
不起作用:
假设我有一个将 0px
上的元素移动 100px
的动画,并且当它仅移动 50px
时我使用停止。结果将是 50px
处的元素。我想要的结果是当我中断动画时,即使元素在 50px
处,它也会立即跳转到 100px
。
我该怎么做?
I need to stop the animation and instantly complete all pending animations.stop
doesn't work:
Lets say I have animation that moves element that is on 0px
by 100px
and I use stop when it moved only 50px
. The result will be an element at 50px
. The result I want is when I interrupt the animation, even if the element is at 50px
it will instantly jump to 100px
.
How do I do that?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
$.fn.stop() 可以选择清除队列并跳转到末尾。
只需执行以下操作:
$('#foo').stop(true, true);
$.fn.stop() has the option to clear the queue and to jump to the end.
Just do something like:
$('#foo').stop(true, true);
发现这个在 http://forum.jquery.com /topic/stop-true-true-animation-chains-and-callbacks
使用它
如果这不起作用,也许将您的原始代码更改为:
found this at http://forum.jquery.com/topic/stop-true-true-animation-chains-and-callbacks
use it by
If that doesn't work, maybe change your original code to:
手动指定最后的状态,不要偷懒。我确信你能做到:)
Specify manually the last state, don't be lazy. Im sure you can do it :)