Hallo,
vielen Dank. Das funktioniert jetzt. Gibt es keine andere Möglichkeit, das Intervall beim ersten auszulassen
Du kannst setTimeout verwenden. Das erscheint mir ohnehin sinnvoller, weil du nicht weißt, wie lange der alert-Dialog offen ist. Du willst wahrscheinlich nicht, dass der Intervall weiterläuft, während der Dialog offen ist. Das passiert bei setInterval. Wenn der Dialog 4s offen ist, würde er nach dem Schließen direkt wieder nach 1s geöffnet.
alert() hält die Ausführung sämtlicher JavaScripte an (zumindest im aktuellen Thread der JS-Engine), aber die Intervalle und Timeouts laufen m.W. weiter. Das sind im Grunde nur Funktionen, deren Ausführung für einen bestimmten Zeitpunkt in der Zukunft terminiert ist.
Beispiel mit setTimeout:
var i = 0, handle;
var step = function() {
i++
alert(i);
// *Nach* dem Schließen des Alerts: Warte 5s bis zum nächsten Alert
handle = setTimeout(step, 5000);
};
step(); // Starten
Mathias