Ich habe einige Javascipt (jQuery) in dem ich verbinde in #myDiv, wenn eine Schaltfläche geklickt wird, und dann wieder ausgeblendet nach 5 Sekunden mit einer Timeout-Funktion. Es funktioniert gut, aber wenn ein Benutzer erneut auf die Schaltfläche klickt, bevor die Funktion fadeOut innerhalb meiner Zeitüberschreitung ausgeführt wird, muss das Zeitlimit anhalten und im Wesentlichen neu beginnen.Abbrechen/Stoppen einer Timeout-Funktion
Ich denke, die Antwort wird sein, eine Funktion zuerst zu starten, um das Timeout zu löschen, obwohl ich das nicht funktionieren kann.
$('button').on('click', function() {
//need function here to stop the timeout if running
$("#myDiv").fadeIn(slow);
setTimeout(function(){
$("#myDiv").fadeOut(slow);
}, 5000);
});
Blick auf diesen Beitrag Ihre Antwort zu finden. http://stackoverflow.com/questions/2578628/how-to-stop-override-a-jquery-timeout-funktion – theblindprophet
danke für den Link - Ich habe viel Forschung und fand mehr als nur diesen Link, der mit dem Stoppen beschäftigt Das Timeout, aber ich konnte nicht herausfinden, wie das Timeout nach dem Speichern in der Variablen tatsächlich ausgeführt wird. Daher habe ich diese Frage in der Hoffnung gestellt, eine vollständige Lösung zu finden, dh wie Timeout als Variable gespeichert und Timeout ausgeführt wird – scmccarthy22