带开始和停止按钮的clearInterval

时间:2012-05-13 02:48:03

标签: javascript setinterval

我使用setinterval进行简单的倒计时,我得到的错误是我的函数没有定义。我正在使用按钮来启动和停止间隔。任何想法为什么会这样?

的Javascript

function startCount() {
    $(function() {
        var count = 10;
        countdown = setInterval(function() {
            $("p.countdown").html(count + " seconds remaining!");
            if (count === 0) {
                window.location = 'http://google.com';
            }
            count--;
        }, 1000);
    });
}



function startStop() {
    clearInterval(countdown);
}​

HTML

<p class="countdown"></p>
<button onclick="startCount()">Start</button>
<button onclick="startStop()">Stop</button>

演示 http://jsfiddle.net/54uQz/1/

1 个答案:

答案 0 :(得分:2)

startCount()函数之外声明倒计时变量,以便两个函数都可以看到它。目前它只存在于第一个中,因此清除计时器什么都不做。

<强> CODE:

var countdown;

function startCount() {
    var count = 10;
    countdown = setInterval(function() {
        $("p.countdown").html(count + " seconds remaining!");
        if (count === 0) {
            window.location = 'http://google.com';
        }
        count--;
    }, 1000);
}


function startStop() {
    clearInterval(countdown);
}

更新后的Fiddle Example!