如何将setTimeout与“;当“;循环

How to use setTimeout with a "do while" loop in Javascript?

本文关键字:循环 setTimeout      更新时间:2024-02-27

我正在尝试对一个span元素(#330s)进行30秒倒计时,该元素将在单击另一个元素(#start)时启动。它似乎不起作用。我将感谢你的帮助。

var countdown = function() {
  setTimeout(function() {
    var i = 30;
    do {
      $("#thirty").text(i);
      i--;
    } while (i > 0);
  }, 1000);
}
$("#start-timer").click(countdown());

使用这个:

var i = 30;
var countdown = function() {
  var timeout_ = setInterval(function() {
      $("#thirty").text(i);
      i--;
      if(i==0){
         i = 30;
         clearInterval(timeout_);
      }
  }, 1000);
}
$("#start-timer").click(countdown);