我想制作一个动画,其中数字从 0 开始,然后在一定时间内达到 3000。
因此,您将看到 0 到 3000 之间的所有数字,直到在给定毫秒时间内达到 3000。
有什么线索吗?
编辑
好吧,如果你的结尾数字是 100 万,那么查看之间的所有数字可能会很痛苦。因此,也许可以通过跳过中间的一些数字来更快地达到最终数字。这能成为一个解决方案吗?
最佳答案
您可以使用setInterval
方法按照设定的时间间隔运行代码。这将在 48000 毫秒内计数到 3000:
var cnt = 0;
var timer = window.setInterval(function(){
cnt++;
document.getElementById('display').innerHTML = cnt;
if (cnt == 3000) {
window.clearInterval(timer);
}
}, 16);
演示:http://jsfiddle.net/Guffa/5grSA/
注意:60 Hz 是屏幕(例如大多数 LCD 显示器)的常见更新频率。如果您希望所有数字实际上在屏幕上可见,则更改数字的频率不能超过每 16 毫秒一次。如果你想让数字计数得更快,那么没有必要设置更短的时间,然后跳过一些数字,例如只显示每 10 个数字,使其在 4800 毫秒内运行:
cnt += 10;
关于javascript - javascript中从0到某个数字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12842307/