Ich werde nicht in einem bestimmten Zeitraum einen Block Code ausführen und dann, wenn Sie fertig sind, weiter mit einem anderen Block von Code.Javascript Timing-Problem
Antwort
Sie möchten die setTimeout()-Funktion verwenden.
SetTimeout - führt Code nach einem Zeitintervall
clear - bricht die setTimeout()
Weitere Details here.
Verwenden Sie die setTimeout() ist wahrscheinlich, was Sie wollen. Zum Beispiel ...
<script type="text/javascript">
function YourFunction()
{
alert('Hello Stackoverflow');
}
window.setTimeout(YourFunction, 1000);
</script>
Hoffnung, es hilft
Dies ist, wie Sie es tun würde, mit der setTimeout
Funktion, die Code als erstes Argument nennen dauert und wie viel Zeit sollte es warten vor dem Aufruf es (in Millisekunden) als zweites Argument:
function callWhenDone() {
// code to call when timeout finishes
}
setTimeout(function() {
// initial code to run
callWhenDone();
}, 5000); // 5000 = run in 5 seconds
Aufgrund der Natur von Javascript Sie den Code, den Sie ausführen möchten einzukapseln müssen nach dem Timeout in seiner eigenen Funktion fertig ist, sonst wäre es, bevor die ausgeführt werden Timeout ist beendet. Dies ist im Wesentlichen eine callback, und es ist ein großer Teil der ereignisbasierten Natur von Javascript.
Verwenden Sie setTimeout
.
setTimeout(function() {
// code here
// you can use it recursively
// setTimeout(...);
},
1000 // 1000 miliseconds (= 1 second)
);
und setInterval
ist wie setTimeout
, außer es immer wieder einen Code wiederholt.
<script type="text/javascript">
var timer = setInterval("firstFunction()","1000"); //every second call firstFunction()
var i = 0;
function firstFunction()
{
//first code
i++;
if(i == 3)
{
clearInterval(timer);
secondFunction();
}
}
function secondFunction()
{
//second code
alert("done!");
}
</script>
- 1. JavaScript Parser in JavaScript
- 2. Javascript
- 3. JavaScript
- 4. hinzufügen JavaScript-Objekt JavaScript-Objekt
- 5. Javascript :; vs javascript: void (0);
- 6. Funktionale JavaScript und Web-Browser Javascript-Versionen
- 7. Javascript/jQuery reine Javascript-Äquivalent von Code
- 8. JavaScript - Escape-Anführungszeichen im JavaScript-Objekteigenschaftswert
- 9. Kotlin-Compiler auf JavaScript in JavaScript?
- 10. Große Animations-Engines für Javascript? - Javascript/Animationen
- 11. Über Javascript-Code von Eloquent Javascript
- 12. JavaScript in einer anderen JavaScript-Datei verwenden
- 13. Inline Javascript und externe Javascript blockieren einander
- 14. Auslassen von type = "text/javascript" language = "javascript"
- 15. JavaScript eine Objektmethode über andere Javascript-Objekt
- 16. Injizieren Sie Javascript in eine JavaScript-Funktion
- 17. JavaScript Beispielfrage: lexikalische Scoping/Schließung - Eloquent Javascript
- 18. Wie programmiere JavaScript JavaScript in PDF-Dateien?
- 19. Javascript ----- Was ist Konflikt von meinem Javascript
- 20. language = "javascript" vs. type = "text/javascript"
- 21. Javascript Quiz - modales Popup über Javascript auslösen
- 22. einschließlich Javascript in einem anderen enthalten Javascript
- 23. Wie JavaScript JavaScript-Datei API in IE8
- 24. Wie viel Javascript ist zu viel Javascript
- 25. href = "javascript:" vs. href = "javascript: void (0)"
- 26. globale Javascript-Dateien und Namenskonventionen (unaufdringliches Javascript)?
- 27. JavaScript innerHTML = JavaScript-Funktion, die Zeichenfolge
- 28. Javascript - wie Wert in Javascript-Code übergeben
- 29. JavaScript Framework
- 30. JavaScript Funktionsaufruf
so ???? was willst du? Bitte beweisen Sie mehr Informationen. Irgendein Code .. usw. – Shoban
Vielleicht ist sein Problem mit der Tatsache, dass nachdem setTimeout gesetzt ist, javascript sofort weiter den Rest seines Skripts ausführt? Wenn dies der Fall ist, müssen Sie festlegen, dass setTimeout eine Funktion aufruft, und rufen Sie innerhalb dieser Funktion, die Sie aufrufen, die Funktion auf, die nach Abschluss ausgeführt werden soll. –
Sind Sie an einem Framework interessiert? MooTools hat eine glatte Verkettungsschnittstelle, um dies zu einem Kinderspiel zu machen. –