Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/377.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何设置JavaScript计数器的动画_Javascript_Html - Fatal编程技术网

如何设置JavaScript计数器的动画

如何设置JavaScript计数器的动画,javascript,html,Javascript,Html,我在JavaScript中计算0到100之间的值,但是整个计数应该需要3秒才能达到0到100。但是现在它发生在几毫秒之内 我该怎么做 <span><span id="counter"> </span> of 100 files</span> <script> for(var i=0;i<=100;i++) { setT

我在JavaScript中计算0到100之间的值,但是整个计数应该需要3秒才能达到0到100。但是现在它发生在几毫秒之内

我该怎么做

<span><span id="counter"> </span> of 100 files</span>


        <script>
            for(var i=0;i<=100;i++)
            {       
                setTimeout(document.getElementById("counter").innerHTML = i, 3000);
            }
        </script>
100个文件

对于(var i=0;i我猜你的意思是在3秒内从1到100,下面是一个例子:

var i = 0;

var inv = setInterval(function() {     
    if(i < 100)
        document.getElementById("counter").innerHTML = ++i;
    else
        clearInterval(inv);
}, 3000 / 100);
var i=0;
var inv=setInterval(函数(){
如果(i<100)
document.getElementById(“计数器”).innerHTML=++i;
其他的
清除间隔(inv);
}, 3000 / 100);

这使得整个增量大约需要3秒钟。通过设置一个间隔(前缀)来实现递增全局变量
i
,并每0.03秒设置为
innerHTML
。然后在达到100后清除间隔。您可以根据自己的喜好修改步长、速度和边界。下面是一个示例。

我猜您的意思是在3秒内从1到100,下面是一个示例:

var i = 0;

var inv = setInterval(function() {     
    if(i < 100)
        document.getElementById("counter").innerHTML = ++i;
    else
        clearInterval(inv);
}, 3000 / 100);
var i=0;
var inv=setInterval(函数(){
如果(i<100)
document.getElementById(“计数器”).innerHTML=++i;
其他的
清除间隔(inv);
}, 3000 / 100);

这使得整个增量大约需要3秒钟。通过设置一个间隔(前缀)来实现递增全局变量
i
,并每0.03秒设置为
innerHTML
。达到100后,它会清除间隔。您可以根据自己的喜好修改步长、速度和边界。以下是一个示例。

为什么要设置大量的intervals@AndrewL.opps这是错误的代码行,应该在我的代码中设置超时e、 刚刚更改了它所以代码有什么问题?@AndrewL。我想实现的是循环应该从0计数到1,比如0 1 2 3..以此类推到100,整个计数应该需要3秒。但是现在计数发生在毫秒内,它不像我想的那样计数。好的,你想用动画打印0到100,对吗一吨intervals@AndrewL.opps这是错误的代码行,我的代码中应该设置Timeout。只是将其更改为代码有什么问题?@AndrewL。我想要实现的是循环应该从0计数到1,就像0 1 2 3..以此类推,直到100,整个计数应该需要3秒。但现在计数发生在毫秒之内不是像我想的那样计数。好的,你想用动画打印0到100吗right@MithunRaikar没问题:)@MithunRaikar没问题:)