Gibt es eine Möglichkeit, JS-Code alle 60 Sekunden auszuführen? Ich denke, es könnte mit einer while
Schleife möglich sein, aber gibt es eine bessere Lösung? JQuery willkommen, wie immer.
javascript
jquery
html
Blaues Feuer
quelle
quelle
Antworten:
Verwenden von setInterval :
setInterval(function() { // your code goes here... }, 60 * 1000); // 60 * 1000 milsec
Die Funktion gibt eine ID zurück, mit der Sie Ihr Intervall mit clearInterval löschen können :
var timerID = setInterval(function() { // your code goes here... }, 60 * 1000); clearInterval(timerID); // The setInterval it cleared and doesn't run anymore.
Eine "Schwester" -Funktion ist setTimeout / clearTimeout .
Wenn Sie eine Funktion auf page init und dann 60 Sekunden danach, 120 Sekunden danach, ... ausführen möchten:
function fn60sec() { // runs every 60 sec and runs on init. } fn60sec(); setInterval(fn60sec, 60*1000);
quelle
60 * 1000
, aber es ist auch eine gute Idee, die Funktion außerhalb zu definieren, anstatt eine anonyme Funktion zu übergeben.Sie könnten dafür verwenden
setInterval
.<script type="text/javascript"> function myFunction () { console.log('Executed!'); } var interval = setInterval(function () { myFunction(); }, 60000); </script>
Deaktivieren Sie den Timer durch Einstellen
clearInterval(interval)
.Siehe diese Geige: http://jsfiddle.net/p6NJt/2/
quelle