我有以下代码使用jQuery $.animate
递增数字。我需要在需要时停止动画,但调用$("#el").stop()
不起作用。有什么想法吗?
<script>
// Animate the element's value from x to y:
$({someValue: 40000}).animate({someValue: 45000}, {
duration: 3000,
easing:'swing', // can be anything
step: function() { // called on every step
// Update the element's text with rounded-up value:
$('#el').text(Math.round(this.someValue));
}
});
</script>
<div id="el"></div>
编辑:
另请提供解决方案,以阻止$.animateNumbers
上的{{1}}:https://github.com/talmand/jquery-animate-numbers
答案 0 :(得分:1)
动画不会在#el
上运行,因此无法从那里停止。它会在您传递给$()
的对象上运行,因此您必须在那里停止它:
var obj = $({someValue: 40000}).animate(...);
obj.stop();