JavaScript计时器不会重置

时间:2014-11-21 12:37:34

标签: javascript html timer

我真的需要一些帮助我的Javascript倒计时器。 我正在尝试制作一个倒计时器,用于测验游戏,当按下按钮时,它会重置并重新开始。

我可以让它重置并重新开始但是如果我在时间到0之前按下按钮,它会超快地倒计时。

有人可以帮忙吗?这是代码:

<script type="text/javascript">

var countdown;
var time;

function init() {
    time = 11;
    reset();
    trigger();

}

function trigger() {

    if(time > 0) {
        time--;
        document.getElementById('timer').innerHTML = time;
        if(time > 0) {
            countdown = setTimeout('trigger()', 1000);
        }
    }
}

function reset() {

    clearTimeout(trigger);

}

</script>

<input type="button" value="Reset" onclick="init()" />

<h3 id="timer">10</h3>

当然我已经设置了基本的HTML文档。该脚本位于标签内,如果我将脚本放在元素中,则计时器行为没有区别。

提前谢谢!

1 个答案:

答案 0 :(得分:1)

您没有在重置时清除超时。它应该是

 clearTimeout(countdown);

像这样fiddle