2011-07-25 6 views
0

私のページでこのJavaScriptカウントダウンタイマーを使ってみましたが、タイマーは起動しませんでした。 私は間違って何をしていますか?ここJavaScriptカウントダウンタイマーが起動していません

var CountdownID = null; 
var start_msecond = 9; 
var start_sec = 120; 

window.onload = countDown(start_msecond, start_sec, "timerID"); 

function countDown(pmsecond, psecond, timerID) { 
var msecond = ((pmsecond < 1) ? "" : "") + pmsecond; 
var second = ((psecond < 9) ? "0": "") + psecond; 

document.getElementById(timerID).innerHTML = second + "." + msecond; 

if (pmsecond == 0 && (psecond-1) < 0) { //Recurse timer 
    clearTimeout(CountdownID); 

    var command = "countDown("+start_msecond+", "+start_sec+", '"+timerID+"')"; 
    CountdownID = window.setTimeout(command, 100); 

    alert("Time is Up! Enter your PIN now to subscribe!"); 
} 
else { //Decrease time by one second 
    --pmsecond; 
    if (pmsecond == 0) { 
     pmsecond=start_msecond; 
      --psecond; 
    } 
    if (psecond == 0) { 
     psecond=start_sec; 
    } 
    var command = "countDown("+pmsecond+", "+psecond+", '"+timerID+"')"; 
    CountdownID = window.setTimeout(command, 100); 
} 
} 

<span style="color:red" name="timerID" id="timerID">91.6</span> 

答えて

2

また、あなたのsetTimeout関数で文字列を使用しないでください

window.onload = function() { 
    countDown(start_msecond, start_sec, "timerID"); 
} 

する必要がありますあなたが最初

window.onload = countDown(start_msecond, start_sec, "timerID"); 

を行うために必要なものです:

CountdownID = window.setTimeout(function() { 
    countDown(pmsecond,psecond,"timerID"); 
}, 100); 
+0

タイマーが動作しています。しかし、なぜそれが再起動し、0に達したときにアラートボックスを表示しないのですか? – tylereff

+0

@tylereff: '--pmsecond;'を 'pmsecond - ;'に変更します – Ibu

+0

タイマーはまだ再開します。 – tylereff

関連する問題