Hi!
Daran hatte ich auch schon gedacht, aber das funktioniert so leider nicht :-(
Er wartet zwar 5 sek. bis er Nix() aufruft, arbeitet aber bis dahin brav all das ab, was nach der setTimeout anweisung noch kommt (setTimeout() ist quasi so eine art timer-interrupt-handler)
Jepp.
Du könntest aber z.B. eine Variable setzen, wo du gerade warst, und diese dann beim nächsten Funktionsaufruf abfragen:
var wobinich=1;
function irgendwas()
{
if (wobinich==1) {
/* mach irgendwas */
setTimeOut("irgendwas()",5000);
}
if (wobinich==2) {
/* mach weiter */
setTimeOut("irgendwas()",5000);
}
wobinich++;
}
Aber Vorsicht, daß du nicht das Flag im if-Bereich hochsetzt und dadurch die nächsten Bedingungen wahr macht!
Kann man hier vielleicht mit funktionen zur uhrzeit was tricksen?
Könnte etwa so gehen:
jetzt = new Date();
biswann = jetzt.getTime() + 5000;
while (jetzt.getTime() < biswann) {}
Aber ich nehme stark an, daß die setTimeOut-Methode CPU-freundlicher ist...
Bis denn dann...
Kommt mir jetzt irgendwie bekannt vor... ;)
Ciao,
Mirko