每秒增加数量?

时间:2016-08-05 18:31:20

标签: javascript html function

我想在onload后5秒发生一个功能。然后,该函数应该每秒更改div的值。基本上,div有一个数字,我希望它的值每秒增加,直到100.这是我到目前为止所得到的:

div {
  display:inline;
}
<body onload="setTimeout(start,3000) ; setTimeout(end,3000) ">
    <div id = number>
    1
    </div>
    %
    
    <script type="text/javascript">
    var i = 1;
    
    setInterval(
    var a = (function start() {
    i = i%100 + 1;
    return i;
    }); , 1000) 
    
    setInterval(
    var earth =  document.getElementById('you');
    
    function end (){
    earth.innerHTML = a; 
    
    }
    
    	)  
    
    
    </script>
</body>

到目前为止没有运气。请告诉我我哪里出错并纠正它。小提琴将不胜感激:D。

4 个答案:

答案 0 :(得分:4)

这应该做你要求的:

setTimeout(start, 5000);

var i = 1;
var num = document.getElementById('number');

function start() {
  setInterval(increase, 1000);
}

function increase() {
    if (i < 100) {
      i++;
      num.innerText = i;
    }
}
<div id="number">1</div>

答案 1 :(得分:2)

在此之后,您可以使用setTimeout获得5秒的差距,之后使用setInterval

&#13;
&#13;
var counter = 0;
var div = document.getElementById('spinner');
setTimeout(function(){
    var st = setInterval(function(){
    div.innerHTML = ++counter;
    if (counter > 100){
        clearInterval(st);
    }
  },1000)
},5000);
&#13;
<div id ="spinner"></div>
&#13;
&#13;
&#13;

答案 2 :(得分:1)

您不应将onload放入<body>标记。

相反,请使用window.onload

在JavaScript中使用它

答案 3 :(得分:0)

将其作为一项功能

function myFunction() {
  setTimeout(
      function() {
         //stuff
      }, 5000);
}

然后执行onload

onload="myFunction();"