javascript - jQuery animate() 没有完成动画

标签 javascript jquery animation

我有一个问题,jQuery 的 animate() 函数没有完成我的数字计数动画的动画。动画应该简单地从 0 计数到 5000,但当它刷新时,它有时会在 4999 结束,其他时候会在 4989 等结束。

它在 80% 的时间里都能正常工作,但有 20% 的时间在您刷新页面时动画会以不同的数字结束。我做错了什么?

http://jsbin.com/dobajepoti/2/ (不断刷新页面即可看到)

最佳答案

step() 函数不保证在每个中间值上调用,而是在动画的每个 step 上调用(可以由超时或由请求 next animation frame )。因此,最终值 5,000 并不总是构成一个动画步骤。

为确保它确实如此,您可以将每步函数分配给 done 回调:

$(thing).animate({
  // ...
  step: myStepFunction,
  done: myStepFunction
});

例如http://output.jsbin.com/fagicunuye

关于javascript - jQuery animate() 没有完成动画,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30095171/

相关文章:

javascript - 附加元素的 jQuery FadeIn

javascript - 动画 jQuery 高度百分比

ios - SceneKit 中的多个串行动画

javascript - GCloud:调试 "function crashed out of request scope"

javascript - JS/jQuery : How can I select the first LI item of an UL navigation when hovering over another (lower) LI element?

php - 如何使用 php 变量分配 javascript 变量或数组

java - 使用 SupportActionbar 隐藏选项卡的动画

javascript - 带 ID 的 Sharepoint NewForm 重定向

jQuery 动画在 Firefox 中不起作用

javascript - Jquery 对话框在双显示器中不起作用