Bitte helfen! Ich mache ein Alarmsystem, das mehrere Warnungen zur gleichen Zeit auslöst, aber ich möchte, dass sie nacheinander erscheinen, so dass es wie ein Befehl aussieht. In bash ist es die Schlaffunktion.jquery .each Schleife, um jedes Array Element mit einer Verzögerung zwischen ihnen auszuführen
Werfen Sie einen Blick https://jsfiddle.net/14cmgrLj/10/
function iterateThru (message, status) {
var time = 500;
$.each(alertsArray, function(index, item) {
\t \t
\t //setTimeout(function(){ fireAlerts(message, status); }, 1000);
setTimeout(fireAlerts, 100, message, status);
\t \t \t \t
//remove
\t \t \t \t setTimeout(removeAlert, 4000);
});
// empty array
alertsArray = [];
}
ich diese Funktion aus aller meiner Seite nenne. In dem Bemühen, sie 1-mal-1 auszulösen - jedes Mal, wenn meine Funktion verwendet wird, wird das Objekt zu einem Array hinzugefügt, und dann benutze ich .each, um jedes mit einem setTimeout zu durchlaufen, aber sie feuern alle gleichzeitig. Wie kann ich die Elemente des Arrays mit einer Verzögerung zwischen ihnen durchlaufen.
Vielen Dank im Voraus
Sie Ihre Firealert und removeAlert Funktionen wie> – ayushgp
Die setTimeouts Code asynchron auszuführen verursachen erwartungs das ist, was das verursacht wird Problem. Sie müssen stattdessen eine rekursive Schleife verwenden. – nurdyguy
FireAlert und removeAlert Funktionen funktionieren, aber nicht so, wie ich es möchte. https://jsfiddle.net/14cmgrLj/10/ @ayushgp – Omar