Ich entwickle eine Website, die JavaScript (jQuery) ausgiebig nutzt. Ich bekomme regelmäßig den IE "Hör auf, dieses Skript auszuführen?" Fehlerdialog wenn ich versuche den Browser zu schließen.
Ich vermute, dass das Problem auftritt, weil die Site eine einzelne Seite ist, die AJAX verwendet, so dass es keine Postbacks gibt, um IE die Anzahl der ausgeführten Befehle zurückzusetzen.
Client-seitiges Registry-Hacking ist keine Option.
Kennt jemand eine Möglichkeit, um diesen Fehler zu umgehen?
UPDATE: Die Seite hat eine Anzahl (~ 10) Intervall-Timer, die kontinuierlich in Intervallen von 30 oder 60 Sekunden abfragen.
Ich habe mich auch diesem Problem gestellt und dieses Problem dadurch gelöst, dass ich die fortlaufende DOM-Ausführung geteilt habe. Für diesen Ansatz habe ich setTimeout
function verwendet. Die Behebung dieses Problems hängt vollständig davon ab, wie Sie die fortlaufende Ausführung teilen.
Verwenden Sie zufällig einen window.onunload-Handler? Wenn Sie dies tun, können Sie überprüfen, ob Sie dort eine Endlosschleife haben.
Um zu überprüfen, am Ende Ihres Javascript tun:
%Vor%und erneut testen.
Problem: "Dieses Skript nicht mehr ausführen?" Fehler
Lösung: Sie können dies ein Kompatibilitätsproblem oder ein Fehler sagen, da das gleiche Zeug ohne Fehler in Mozilla läuft, aber es läuft in IE 6,7 oder 8 mit einer Fehlermeldung "Stop running this script". Microsoft hat einen Patch zur Verfügung gestellt, um dieses Problem in IE zu beheben. Also, bitte gehen Sie auf den folgenden Link und laden Sie die "Microsoft Fix It" und installieren Sie die gleichen und starten Sie den Browser neu und Sie werden nie den Fehler "Stop running this Script" sehen: Ссылка
Sie haben nur eine lange laufende Skript / Endlosschleife in Ihrem Code. Weitere Details erhalten möglicherweise eine genauere Antwort.
Wenn Ihre Seite viele Intervalle verwendet, sollten Sie sie vor dem Navigieren von der Seite abbrechen. Verwenden Sie window.onunload, um alle Intervalle zu löschen.
Ich habe gerade darüber gebloggt und was ich denke, ist eine ziemlich stilvolle Lösung. Also schau es dir an. Wie oben erwähnt, bricht meine Lösung nur lang andauernde Operationen in Blöcke auf, aber ich biete dafür eine nette Hilfsklasse.
Tags und Links javascript internet-explorer jquery ajax