Hallo,
folgender HTML Ausschnitt:
<body>
<script type="text/javascript" src="script1.js"></script>
<script type="text/javascript" src="script2.js"></script>
hello world
</body>
Der Seitenaufbau erfolgt wie folgt: Zuerst wird script1.js ausgeführt, danach (und wirklich danach, nicht parallel) wird script2.js geladen. Erst dann erscheint "hello world". Falls nun die Ausführung eines der javascript files (bzw. deren Generierung) sehr lange dauert, verlangsamt sich der Seitenaufbau.
Wie kann man das verhindern?
Möglichkeit 1: defer, das Script wird erst am Schluss ausgeführt. Problem: unpraktikabel, da es über document.write Output genieriert. Ein nachträgliches Einfügen über document.createElement und .appendChild ist nicht möglich :-(
Möglichkeit 2: window.setTimeout(), geht ebenfalls nicht, da der HTML-Code von document.write() dann den Seiteninhalt überschriebt.
Was nu?
Grüsse,
Maxwell