【问题标题】:jQuery show setTimeout timerjQuery 显示 setTimeout 计时器
【发布时间】:2012-07-26 10:46:20
【问题描述】:

我正在尝试构建一个简单的倒计时应用程序。是否可以在 setTimeout 上显示计时器值,还是必须使用 for 循环?

谢谢!

【问题讨论】:

  • setTimeout 是要走的路。示例:stackoverflow.com/questions/2835087/countdown-timer
  • 我怎样才能显示计时器值呢?
  • @Rocketeer:你问的是如何显示当前时间?请更具体一点?
  • 您将元素的内容设置为当前倒计时值。
  • 是的,计时器上的当前时间。我必须使用增量函数的一些变体?

标签: javascript jquery timer settimeout


【解决方案1】:

setTimeout

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

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

或使用setInterval

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

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

【讨论】:

  • 用 setTimeout 也能做到吗?
  • setInterval 更可靠,因为无论处理函数需要多少时间,它都会每秒触发一次。见stackoverflow.com/questions/729921/settimeout-or-setinterval
  • 请解除警报,很痛!
  • @mgraph,我相信你忘了在 if 之后添加 return 语句 setTimeout(countDown,1000); 用于 setTImeout 变体
【解决方案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>

【讨论】:

    猜你喜欢
    • 2017-11-05
    • 2011-02-10
    • 2012-01-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多