2011-07-06 4 views
0

J'ai le code javascript suivant. C'est un code de minuterie. La minuterie s'arrête si le questionnaire est 3 pendant 3 secondes et démarre après 3 secondes pendant 20 secondes. Mais ce code ne fonctionne pas si le quiz est autre chose que 3. Quelqu'un peut-il m'aider avec ceci?javascript ne fonctionne pas

<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> 

Répondre

1

Votre script fonctionne pour moi si quiz $ est autre chose que 3 (si elle est 3 delay_countdown sera vrai et vous retourner la fonction sur la ligne 4).

offre un autre retard moment où delay_countdown est vrai:

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

et mis delay_countdown-false avant de quitter la fonction:

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

Merci beaucoup ... ça marche. – Gurnor