我是初学程序员,刚刚启动了JavaScript。我找到了一个倒数计时器,看起来像这样,
代码段:
var count=60 ;
var Time_counter=setInterval(timer, 1000) ;
function timer() {
count=count-1;
if(count <=1){
clearInterval(Time_counter);
alert("Game Over") ;
return;
}
document.getElementById("timer").innerHTML=count;
}
现在每当我运行这个程序时,这个计时器都会立即运行,没有任何条件,即使我放了条件也会发生。它会自动运行,即使我将它保存在输入标记中的onclick属性中,如下所示:
<input id="Timer_button" type="button" value="Time starter" onclick="timer()">
但仍然是同样的问题。即使我没有调用该函数,它也只是运行。
有人能在代码中发现问题吗,这里有什么问题吗?答案真的很感激。请提出建议。
答案 0 :(得分:3)
一种可能性:您可以创建一个启动计时器的功能:
var count = 60;
var Time_counter = null;
function startTimer() {
Time_counter = setInterval(timer, 1000);
}
然后点击调用此功能:
[…] onclick="startTimer();" […]
答案 1 :(得分:1)
问题是setInterval(timer,1000)启动倒计时过程。您已将其全局声明,因此只要加载脚本就会执行它。你必须把它放在一个函数中,只有在它尚未被调用时才调用它。