定时器开始按钮

Timer Start button

您好,我正在制作一款涉及倒数计时器的游戏。我希望游戏在单击计时器按钮时开始,但是此时我的计时器刚刚开始。我已经查看了一些已经回答的不同问题,但是它们对我没有用。有什么建议吗?

     var seconds = 60;
     function secondPassed() {
        var minutes = Math.round((seconds - 30)/60);
        var remainingSeconds = seconds % 60;
        if (remainingSeconds < 10) {
           remainingSeconds = "0" + remainingSeconds;  
        }
        document.getElementById('countdown').innerHTML = minutes + ":" + remainingSeconds;
        if (seconds == 0) {
          clearInterval(countdownTimer);
          document.getElementById('countdown').innerHTML = "Times Up!!!";
        } else {
           seconds--;
        }
     }

     var countdownTimer = setInterval('secondPassed()', 1000);

我猜你是在单击按钮时调用 countdownTimer,如果是这样,你必须将 setInterval 包装在一个函数中。

var countdownTimer = setInterval('secondPassed()', 1000); //Without the wrapper it simply executes, when JS reaches this line

应该是

var countdownTimer = function(){setInterval('secondPassed()', 1000);}

将您的 setInterval 添加到按钮的点击侦听器:

var btn = document.getElementById('BUTTON_ID');
btn.addEventListener('click', function() {
    setInterval('secondPassed()', 1000);
});

jsfiddle DEMO