Javascript Läuft langsam im IE - Was bedeutet "JScript - Skript-Fenster blockieren" bedeuten?
Javascript läuft extrem langsam auf IE auf einigen Seiten unserer Website.
Profiling scheint zu zeigen, dass Sie die folgenden Methoden sind die Einnahme der meisten Zeit:
Method count inclusive time exclusive time)
JScript - window script block 2,332 237.98 184.98
getDimensions 4 33 33
eh 213 32 32
extend 446 30 30
tt_HideSrcTagsRecurs 1,362 26 26
String.split 794 18 18
$ 717 49 17
findElements 104 184.98 14
Was ist mit "JScript - Skript-Fenster blockieren" zu tun?
Verwenden wir jquery und prototype.
- jquery und prototype....nicht mehr sagen
- Ich habe das gleiche Problem, aber nur auf der einen ('slow') computer: meine app ist jquery 1.3 nur
- verwenden Sie
jQuery.noConflict()
?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Aus meiner Erfahrung die wichtigsten Themen, die auf dem Prototyp sind diese:
$$ Selektoren
Versuchen, $ selector mit unten oder wählen Sie statt.
beobachtet
Verwenden Sie nicht zu viele beobachtet. Möchten Sie einen click-Ereignishandler für mehr als ein element verwenden, ids und ein globales Dokument beachten:
CSS-Selektoren, die mit nicht unterstützten Funktionen auf IE
Dieser code funktioniert, aber die Leistung verringern.
Verwendung der name einer Klasse wird die Leistung in dieser situation:
Suche auf DOM-Baum
Etwas anderes erfordern, dass der DOM-Baum durchsuchen.
Ich weiß, diese Frage ist alt, aber für jeden zu bekommen, um es aus den Suchergebnissen.
Ich bin mir ziemlich sicher, dass "JScript - Skript-Fenster blockieren" den IE developer tools profiler Begriff für javascript-Code, der ausgeführt wird im globalen Bereich oder in einer anonymen Funktion.
Wenn ich mich richtig erinnere Fenster Skript-Block hat etwas zu tun mit der IE-internet-Sicherheit-Einstellungen blockieren die Skript-Ausführung. "Hast Sie bemerkt, die gelben Balken?" und Fragen wie diese sollte erscheinen auf der Seite.
Es hängt alles von Ihren Einstellungen für Sicherheitszonen im IE, denke ich.
http://www.questiontools.com/faq_scriptwarning.html
Es gibt keine richtige Antwort hier, weil es keinen Beispiel-code auf das, was er tut.
Jedoch, das erste, was zu betrachten ist DOM-manipulation in den Schlingen. Wenn Sie touch-DOM in Schleifen, seine in der Regel eine schlechte Idee für die Leistung als DOM-manipulation ist notorisch langsam.
Mit JavaScript können Sie erheblich reduzieren DOM-manipulation in Schleifen von etwas wie dies (mit Hilfe von jQuery in diesem Beispiel):
Dies nicht nur zu tun haben mit dem Schleifen natürlich. Es könnte eine beliebige DOM-manipulation aufgerufen wird, immer und immer wieder wie die Fenster.Größe ändern oder scrollen oder die Maus bewegen oder keyup etc etc. Untersuchen Sie, was Ihr code macht, und bestimmen die langsamsten Teile. Dort beginnen.
(Quelle: ejohn.org)
wie Sie sehen können, der IE ist langsam auf javascript.
Quelle und mehr hier.