Wir haben eine einzelne (wichtige) Intranet Seite auf unserem Portal,
die mit DHTML (document.write) neue HTML-Elemente erstellt.
Diese eine Seite, von vielen hundert, ist problematisch mit Firefox 3.5.3.
Konkret werden ca. zu 1400 Zeilen (ca. 500 Nodes/Folder zur Artikelauswahl eines Shops) mit der Bibliothek TreeMenu.js hinzugefügt.
Die Seite mit dem HTML Code wird sehr schnell geladen (Weniger als 2 Sekunden, ist OK)
Danach wird bei dem Tree ein Folder angeklickt und zwischen 50-500 Sub-Elemente unter dem Folder
werden dynamisch in den DOM hineingerendert (eingeblendet).
Wenn die Anzahl der Nodes bis zu 50 beträgt, ist Firefox 3.5.3 schnell genug.
Wenn die Anzahl der Nodes bis zu 500 beträgt, ist Firefox 3.5.3 extrem langsam (ca. 3-4 Minuten).
Die Intranet Seite gibt es seit 5 Jahren.
Javascript ist absolut fehlerfrei. Dies wurde heute nochmals geprüft.
Der HTML Code ist absoult fehlerfrei. Wurde ebenfalls nochmals geprüft.
Folgenden Webbrowsern benötigen die angegebenen Zeiten zum dynamischen Rendern mit DHTML
von der selben Webseite.
Safari 4.0.3 (< 0.5 Sekunden)
Opera 9.6.4 (< 0.5 Sekunden)
Internet Explorer 8.0.6001.18702 (< 1.0 Sekunden)
Firefox 1.5.x (< 5 Sekunden)
Firefox 3.0.14 (< 5 Sekunden)
Firefox 3.5.3 (> 240 Sekunden)
Ich habe bereits folgende Versuche ohne Änderung des Ergebnisses ausgetestet:
1.) Firefox 3.5.3 im "save mode" gestartet (ohne plugins, ohne themes)
2.) cache von 512.000 auf 900.000 erhöht.
3.) Javascript umgebaut von DHTML (document.write) auf DOM (mit mootools.js)
So wie das Problem für mich aussieht, handelt es sich um ein performance Problem
mit der Javascript Engine. Ich würde mich sehr freuen, wenn der Fehler wieder
ausgebaut wird und/oder jemand einen sinnvollen Workaround vorschlagen kann.
Vielen Dank für Eure Unterstützung und Antwort.
KEE