我正在尝试使用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。我的错误是什么?
此解决方案适用于您想要实现的目标:
.HTML
<body onload="createQuestion();">
<p id="my-question"></p>
<p id="time-left">3</p>
<button onclick="checkAnswer();">Check Answer</button>
JavaScript
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
}
我解决了这个问题。 我编辑var downloadTimer
为downloadTimer