countdown
Tropenhelmut
- javascript
0 JürgenB
0 Tropenhelmut0 JürgenB
0 Tropenhelmut0 JürgenB
Hallo,
auch wenn es dutzende fertige Schnipsel hierf+r im Netz gibt, ich möchte mein eigenes haben. Aber es hakt noch und die Fehlöerkonsole bleibt leider still. Jetzt brauch ich das Forum.
<script type=\"text/javascript\">
function countdown(uebergabesek)
{
var sek = uebergabesek;
document.zeitablauf.innerHTML = 'Dieses Div soll in ' + sek + 'Sekunden ausgeblendet werden.';
sek--;
while ( sek > 0) {
window.setTimeout(\"countdown(sek)\",1000);
}
}
</script>
<script type=\"text/javascript\">
countdown('10');
</script>
<div id='zeitablauf'>
Test
</div>
Hallo Tropenhelmut,
setTimeout startet eine Funktion zeitverzögert, wartet aber nicht. In Javascript gibt es kein "wait" oder "sleep" oder "delay" oder ... .
Gruß, Jürgen
Hallo Tropenhelmut,
setTimeout startet eine Funktion zeitverzögert, wartet aber nicht. In Javascript gibt es kein "wait" oder "sleep" oder "delay" oder ... .
Ja und?
Warum funkt es nicht?
Hallo Tropenhelmut,
Ja und?
Warum funkt es nicht?
wei es keine Antenne hat und weil die while-Schleife den setTimeout so schnell wie möglich immer wieder aufruft. setTimeout ist KEIN wait. setTimeout ruft eine Funktion zeitverzögert auf, wartet aber nicht, bis die Funktion fertig ist.
Gruß, Jürgen
wei es keine Antenne hat und weil die while-Schleife den setTimeout so schnell wie möglich immer wieder aufruft. setTimeout ist KEIN wait. setTimeout ruft eine Funktion zeitverzögert auf, wartet aber nicht, bis die Funktion fertig ist.
Gruß, Jürgen
Und wie löse ich das Problem nun?
Ich dachte, setTimeout wartet auf die Funktion.
Th
Hallo Tropenhelmut,
Und wie löse ich das Problem nun?
ertsetz das "while" durch ein "if"; und achte darauf, dass die Funktion erst aufgerufen wird, wenn das div mit der id 'zeitablauf' existiert. Und beschäftige dich mit document.getElementById, der Zugriff über document.zeitablauf ist IE-Syntax und wird nicht von allen Browsern unterstützt.
Gruß, Jürgen
ertsetz das "while" durch ein "if"; und achte darauf, dass die Funktion erst aufgerufen wird, wenn das div mit der id 'zeitablauf' existiert. Und beschäftige dich mit document.getElementById, der Zugriff über document.zeitablauf ist IE-Syntax und wird nicht von allen Browsern unterstützt.
Danke Jürgen.
Jetzt läufts einwandfrei.
Gruß, Th