0

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()">

しかし、それでも同じ問題です。関数を呼び出さなくても、実行されます。

誰でもコードの問題を見つけることができますか?ここで何か問題が発生していますか? 回答をいただければ幸いです。アドバイスが必要です。

4

2 に答える 2

3

1 つの可能性: タイマーを開始する関数を作成できます。

var count = 60;
var Time_counter = null;

function startTimer() {
    Time_counter = setInterval(timer, 1000);
}

そして、クリック時にこの関数を呼び出します:

 […] onclick="startTimer();" […]
于 2013-09-05T19:53:01.687 に答える