Hallo Niggel
ID = setInterval("Warte()", 10);
function Warte(){
if (Wert != "OK") {
ID = setInterval("Warte()", 10);
}
}
so müsste es gehen.
nein auch nicht. setInterval rufst ja die Funktion alle 10 ms auf. So wie du sie aufbaust, wird mit jedem Aufruf erneut ein setInterval initialisiert.
2 Möglichkeiten gibt es:
ID = window.setTimeout("Warte()", 10);
function Warte(){
if (Wert != "OK") {
//Wert stimmt nicht, neuer Wartezyklus wird eingeleitet
ID = window.setTimeout("Warte()", 10);
}
}
oder
ID = window.setInterval("Warte()", 10);
function Warte(){
if (Wert == "OK") {
//Wert stimmt, Intervallschleife wird beendet
ID = window.clearInterval("Warte()", 10);
}
}
Mehr dazu:
http://selfhtml.teamone.de/javascript/objekte/window.htm#clear_interval
http://selfhtml.teamone.de/javascript/objekte/window.htm#set_interval
http://selfhtml.teamone.de/javascript/objekte/window.htm#set_timeout
Viele Grüße
Antje
Hallo Antje,
da ist ein kleiner Fehler in Deiner Fehlerkorrektur:
anstelle ID = window.clearInterval("Warte()", 10);
muss window.clearInterval(ID); verwendet werden.
Siehe z.B. mein JavaScript-Spiel unter
http://www.tu-chemnitz.de/~luta/play/threefit.html
Viele Grüße, Lutz :-)