是的,另一个clearInterval问题

时间:2013-06-22 21:55:56

标签: javascript jquery

我正式陷入困境。我似乎无法使stopTimer()函数正常工作。任何帮助将不胜感激。谢谢!

http://jsfiddle.net/4Efbd/1/

var counter;

function stopTimer() {
    window.clearInterval(counter);
     $('#queryTimer').html('');
}

function startTimer() {
    var count = 60;
    var counter = setInterval(function () {
        count = count - 1;
        if (count <= 0) {
            window.clearInterval(counter);
            return;
        }

        $('#queryTimer').html('Requery in:' + count + ' Seconds.');

    }, 1000);
}
$('#start').click(function () {
    startTimer();
});
$('#stop').click(function () {
    stopTimer();
});

1 个答案:

答案 0 :(得分:5)

var counter = setInterval(function () {

这就是说“创建一个新变量counter”。这意味着现有变量永远不会更改,因此clearInterval没有正确的标识符来清除它。您想使用现有变量:

counter = setInterval(function () {