1

我正在尝试使用 javascript 创建倒计时。我从这里得到了一些代码并稍微修改了它。

<script type="text/javascript">
var c=10, t;

function timedCount() {
  document.getElementById('txt').value=c;
  c=c-1;
  t=setInterval("timedCount()",1000);
}

function stopCount() {
  clearInterval(t);
}
</script>

我需要反复调用倒计时,直到用户点击链接。它应该每秒从 10 倒计时(10,9,8,7,6...0),直到点击链接,但它没有。有谁能够帮助我?

编辑:有谁知道一旦倒计时达到 0 时如何重新开始?

先感谢您。

4

1 回答 1

6
<script type="text/javascript">
var c=10;
var t;
function timedCount()
{
    document.getElementById('txt').value=c;
    c=c-1;
}
function startCount()
{
    if (!t) t=setInterval("timedCount()",1000);
}
function stopCount()
{
    clearInterval(t);
    t=null;
}
</script>

startCount()当您希望计数器启动时调用onload (或其他)。请注意,我的 startCount 和 stopCount 不会创建多个间隔计时器。

此外,带有 id=txt 的元素需要是一个<input><textarea>框,您的代码才能正常工作。如果它是一个跨度,你应该使用document.getElementById('txt').innerHTML=c;

最后,如果 c 低于零,您可能希望 timedCount() 到 stopCount()。这很容易:

if (c <= 0) stopCount();
于 2008-11-23T00:10:01.127 回答