jQuery show setTimeout timer

2019-04-09 04:45发布

问题:

I'm trying to build a simple countdown application. Is it possible to show the timer value on setTimeout, or would I have to use a for loop?

Thanks!

回答1:

with setTimeout :

var n = 100;
setTimeout(countDown,1000);

function countDown(){
   n--;
   if(n > 0){
      setTimeout(countDown,1000);
   }
   console.log(n);
}

or using setInterval :

var n = 100;
var tm = setInterval(countDown,1000);

function countDown(){
   n--;
   if(n == 0){
      clearInterval(tm);
   }
   console.log(n);
}


回答2:

<script>
var timer = setInterval("mytimer()",1000);
seconds = 0;
function mytimer()
{
document.getElementById("div_timer").innerHTML = seconds; // this is the same as $("div_timer").html(timer) in       jquery.
seconds++;
} 

 </script>
    <body>
      <div id="div_timer"></div>
       </body>