我正在尝试使用javascript制作正确/错误的应用程序。这是我的计时器代码:
var timeleft = 3;
var downloadTimer = setInterval(function() {
timeleft--;
document.getElementById("geri_sayim").textContent = timeleft;
if (timeleft <= 0) {
clearInterval(downloadTimer);
alert("time is up");
}
},1000);
我具有以下功能:
CreateQuestion();
CheckAnswer();
isConfirm();
当我将此计时器添加到CreateQuestion()
时,它可以工作。但是我想在用户单击答案按钮时停止此计时器。因此,我将此代码添加到CheckAnswer()
clearInterval(downloadTimer);
但是,当我这样做时,应用程序将无法运行,计时器也将无法运行。基本上,我希望每个问题都从3开始倒数。我怎么了?
答案 0 :(得分:0)
我解决了这个问题。
我将var downloadTimer
编辑为downloadTimer
答案 1 :(得分:0)
此解决方案适用于您想要实现的目标:
<body onload="createQuestion();">
<p id="my-question"></p>
<p id="time-left">3</p>
<button onclick="checkAnswer();">Check Answer</button>
var timeleft = 3;
var myTimer;
function createQuestion() {
// You create your question..
document.getElementById("my-question").innerHTML = "Do you know the answer to this question?";
// ..and start the timer..
myTimer = setInterval(function() {
timeleft--;
document.getElementById("time-left").textContent = timeleft;
if (timeleft <= 0) {
clearInterval(myTimer);
alert("Time is up!");
}
},1000);
}
function checkAnswer() {
// Pause the time!
clearInterval(myTimer);
alert("Time paused!");
}
function isConfirm() {
// Whatever other code you wrote for this function
}