如何在使用增量时停止jQuery $ .animate

时间:2014-04-11 16:51:28

标签: javascript jquery jquery-animate

我有以下代码使用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

1 个答案:

答案 0 :(得分:1)

动画不会在#el上运行,因此无法从那里停止。它会在您传递给$()的对象上运行,因此您必须在那里停止它:

var obj =  $({someValue: 40000}).animate(...);
obj.stop();