Erst laden, dann anzeigen!

Hallo
wie kann ich es per Javascript anstellen, dass während die Satrtseite angezeigt wird die Homeseite geladen wird.
Und erst dann die Homeseite angezeigt wird wenn sie vollständig geladen ist.

Vielen Dank schon mal im Voraus

Wolfgang

Das kommt darauf an, ob Deine Seite auch mit dem Netscape funktionieren muss oder nicht.

Man kann, aber nur im IE, eine Frameseite erstellen, welche man in zwei einzelne Frames unterteilt. Einen der beiden Frames setzt man auf die Höhe=0 bzw. Breite=0, was von der Teilung abhängt. (Horizontal:Höhe=0, Vertikal:Breite=0)

Diesen so verkleinerten Frame kann man also zunächst gar nicht sehen. Nun lädt man in den grossen Frame die Startseite und in den kleinen Frame die Homepage selbst. Auf der Homepage selbst kann man nun in das OnLoad-Event eine Funktion einfügen die den verkleinerten Frame nun auf die volle Fenstergroesse verändert und den vormals verkleinerten Frame dagegen auf Null setzt.

Wie gesagt funktioniert dies aber nur im IE so, und da es sich bei dieser Funktionsweise nicht um einen Standard handelt, könnte es auch leicht passieren, dass es mit einer neueren Version des IE irgendwann einfach nicht mehr funktioniert.

Eine andere Möglichkeit, die nicht ganz so effektiv ist, dafuer aber völlig Standardkonform, ist es, in der Startseite alle Bildelemente vorraus zu laden, ohne sie selbst in der Seite anzuzeigen. Dies hat den Vorteil, dass sie, wenn die eigentliche Seite geladen wird schon im Browsercache gespeichert sind, da sie ja von einer anderen Seite geladen wurden, und somit nicht mehr übertragen werden muessen. Nun muss nur noch der eigentliche HTML-Code der Seite übertragen werden. Der Geschwindigkeitsvorteil in der Anzeige hängt hier ganz vom Verhältnis der Bilddatenmenge zur HTML-Datenmenge ab.

Diese Technik laesst sich auch über mehrere Seiten hinweg anwenden, indem man zum Beispiel ueber zehn Seiten hinweg immer ein zehntel der Bilder lädt, sie aber nicht darstellt, um sie dann später auf der eigentlichen Seite schnell zu präsentieren.

Der Nachteil, dass sich dadurch natürlich wiederum die Ladezeit der vorhergehenden Seite(n) vergroessert darf natürlich nicht ausser Acht gelassen werden. Die Daten muessen ja so oder so übertragen werden. Die Frage ist halt immer nur wann und wieviel.

Gruß
Heiko