2011-07-06 71 views
0

我有以下JavaScript代碼。它是一個計時器代碼。如果測驗3分3秒,則計時器停止,3秒後計時20秒。但是,如果測驗是3以外的其他任何東西,這段代碼就不適用了。有誰能幫我解決這個問題嗎?javascript不工作

<script type="text/javascript"> 
    var days = 0 
    var hours = 0 
    var minutes = 0 
    var seconds = 20 
    var delay_countdown = <?php echo ($quiz == 3) || 0 ; ?>; 
function setCount() 
{ 
    document.getElementById("remain").innerHTML = seconds+" seconds"; 
    SD=window.setTimeout("setCount()", 1000); 
    if (delay_countdown) { 
    return 
    } 
    seconds--; 
    if (seconds < 0){ 
     minutes--; 
     seconds = 59 
    } 
    if (minutes < 0){ 
     hours--; 
     minutes = 59 
    } 
    if (hours < 0){ 
     days--; 
     hours = 23 
    } 

} 

</script> 

回答

1

您的腳本工作對我來說,如果$測驗什麼事情比其他3(如果是3 delay_countdown將是真實的,並返回四號線功能)。

供應時delay_countdown是真正不同的延遲時間:

SD=window.setTimeout(setCount, (delay_countdown)?3000:1000); 

,並設置delay_countdownfalse離開函數之前:

if (delay_countdown) { 
    delay_countdown=false; 
    return; 
    } 
+0

非常感謝......它的工作原理。 – Gurnor