Dieses Mal werde ich Ihnen zeigen, wie Sie die Ausführung von js anhalten und welche Vorsichtsmaßnahmen zum Anhalten von js gelten. Das Folgende ist ein praktischer Fall, schauen wir uns das an.
JavaScript ist eine Single-Threaded-Skriptsprache, die asynchrone Aufgaben verarbeiten kann. Sie bietet keine Möglichkeit, das JS-Skript anzuhalten die folgende Methode Single-Thread-Analyse
1: Warnung anhalten und Popup-Fenster bestätigen
JS-Klassenmethoden für Warnung und Bestätigung von Popup-Fenstern können die Ausführung von JS-Skripten anhalten
Zum Beispiel:
<script> console.log(1); alert(1); console.log(2); </script>
Ein Popup-Fenster wie Dies erfordert einen Klick zur Bestätigung, bevor Folgendes ausgeführt wird: Die Anweisung
wird angehalten, auch wenn es sich um einen Timer handelt
<script> var i=0; setInterval(function(){ console.log(i); i++; if(i==5){ alert(i); } },500) </script>
Wenn Sie also eine Pause benötigen, können Sie das Skript mit der Popup-Methode anhalten. Der Nachteil besteht darin, dass es sich auf die Benutzererfahrung auswirkt
2: while(); Methode pausiert
while Die Methode kann angehalten werden, beeinträchtigt jedoch die Browserleistung und ist schwer zu steuern
<script> var i=0; console.log(new Date()); while(i<5000000000){ i++; } console.log(new Date()); </script>
Solange Sie die Beurteilungsbedingungen von while kontrollieren, können Sie eine Pause erreichen
Drei, Ajax-SynchronisationAnforderungsmethode
Diese Methode erfordert die Implementierung einer Serverkooperation, da ich zu faul bin, sie zu testen.
Die ungefähren Schritte sind: Ajax fordert den Server synchron an, mit einer Parameterzeit Server empfängt es, schläft (Zeit), gibt aus, wenn die Zeit erreicht ist, kehrt zur Ajax-Rückruffunktion zurück, innerhalb dieser Zeit befindet sich Ajax im gestoppten Zustand
Zum Schluss möchte ich Um ein paar Worte hinzuzufügen: Die obige Methode kann den aktuellen Browser-Thread nicht anhalten, was bedeutet, dass der Thread immer noch im aktuellen Status bleibt > wie zum Beispiel: while, die Methode
while-Schleifewurde noch nicht ausgeführt, daher kann der Thread nicht beendet werden erlaubt keinen Wechsel der Ausführung, daher wird eine Pause implementiert
Ich glaube, dass Sie die Methode beherrschen, nachdem Sie den Fall in diesem Artikel gelesen haben. Weitere spannende Informationen finden Sie in anderen verwandten Artikeln auf der chinesischen PHP-Website!
Empfohlene Lektüre:
So verwenden Sie JQ, um mit der rechten Maustaste auf Lieblingswebseiten zu klickenajas asynchrones Upload-Plug-in injQuery implementiert die Formularüberprüfung nach der mehrschichtigen ÜberprüfungDas obige ist der detaillierte Inhalt vonWie man js dazu bringt, die Ausführung anzuhalten. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!