function countDown(secs,elem)
{
var element = document.getElementById(elem);
element.innerHTML = "Game ends in " + secs + " seconds!";
if(secs<1)
{
clearTimeout(timer);
document.getElementById('gameContent').style.display='none';
}
secs--;
var timer = setTimeout('countDown('+secs+',"'+elem+'")',1000);
}
<div class="timerCount" id="status"></div>
<script>countDown(5,"status");</script>
Mein Timer startet korrekt nach 5 Sekunden und dekrementiert. Mein Spiel div versteckt sich nach dem Timer erreicht 0 aber der Timer löscht nicht aus und endet stattdessen wird es auf negativ. Please my bug in meinem Code, um den Timer zu stoppen und zu löschenclearTimeout() Timer nicht löschen
'clear (Timer);' 'timer' ist null jedes Mal. Sie deklarieren 'timer' als letzte Variable in Ihrer Funktion - wie erwarten Sie jemals, dass auf sie vorher zugegriffen wird? – tymeJV
deklarieren Sie 'timer' außerhalb der' countDown' Methode. Es muss zwischen Methodenaufrufen bestehen bleiben. – ps2goat