Kerstin: Preload im body-tag

Hi Ihr!

Stimmt es, dass der Inhalt einer HTML-Seite erst dann angezeigt wird, wenn alle Bilder die in einer JS-Preloadfunktion im body-Tag [<body onLoad="preloadImages..."] stehen, vorausgeladen sind?

Und wenn ja, wie lässt sich dieses Problem umgehen?

gruss
kerstin

  1. Hallo,

    Stimmt es, dass der Inhalt einer HTML-Seite erst dann angezeigt wird, wenn alle Bilder die in einer JS-Preloadfunktion im body-Tag [<body onLoad="preloadImages..."] stehen, vorausgeladen sind?

    Ich würd mal sagen nicht, denn onLoad setzt das schon fertiggeladene der Hauptseite vor. Wenn du jedoch andere erfahrungen gemacht hast, solltest du mal die funktion mit der Problemseite posten.

    Grüße aus Düsseldorf,

    Aleksej

    1. Also hier könnt Ihrs Euch mal anschauen [Frameauszug]:

      http://www.forsthof-hotel.de/service/fsetservice.htm

      Rechts kann man auf die diversen Räumlichkeiten klicken. Ich möchte, dass die große Ansicht und die kleinen Bilder schon einmal in dem Frame "rechts_s.htm" vorausgeladen werden, so dass der User keine Wartezeit mehr hat, wenn er durch die einzelnen Räume klickt.

      Was meint Ihr?

      Kerstin

      1. help ?? siehe oben

        1. Hi,

          help ?? siehe oben

          was genau ist denn nun eigentlich Dein Problem?

          Cheatah

          --
          X-Will-Answer-Email: No
          1. Das Problem lautet ganz genau:

            Wie kann ich die Bilder vorausladen lassen, ohne dass der Seitenaufbau verlangsamt wird? [lasse ich sie wie jetzt im Quellcode, stockt das Laden am Anfang]

            Evtl. in einer Tabelle am Ende (wenn der HTML-Code von oben nach unten gelesen wird) oder durch einen Befehl, der sagt, wenn die Seite fertig geladen ist, dann lade die folgenden Bilder vor...

            K.A. was da alles möglich ist?

            Gruss
            Kerstin

            1. Hi Kerstin,

              Wie kann ich die Bilder vorausladen lassen, ohne dass der Seitenaufbau verlangsamt wird?

              der Aufbau _welcher_ Seite? Derjenigen, in der die Bilder angezeigt werden, oder derjenigen zuvor?

              [lasse ich sie wie jetzt im Quellcode, stockt das Laden am Anfang]

              Das Laden der Bilder kostet Zeit. Die Dauer des Ladevorgangs hängt dabei von der Dateigröße Deiner Bilder ab. Also: Versuche zuallererst, Deine Bilder möglichst volumensparend zu übertragen.

              Was Du beeinflussen kannst, ist,

              1. diesen Ladevorgang auf einen Zeitpunkt zu verschieben, zu dem er nicht mit anderen Ladezeitpunkten kollidiert (also nach dem Inhalt eines Dokuments ggf. bereits Bilder für ein möglicherweise später zu besuchendes Dokument laden ... bedenke aber, daß Du nicht weißt, was Dein Besucher als nächstes tun wird - Du könntest ihm sehr wohl unnötigen Traffic zumuten, falls er beispielsweise parallel zum Surfen auf Deiner Seite einen FTP-Download laufen hat, den Du nun durch die Anforderung Deiner Bilder behinderst), und

              2. Deine Seitenbeschreibung so zu gestalten, daß der Aufbau der Seite nicht von der Verfügbarkeit der Bilder abhängt (also beispielsweise zu jeder Bild-Referenz innerhalb Deiner HTML-Seiten vollständige Größenangaben machen, so daß der Browser das Dokument bereits korrekt rendern und später die eigentliche Bildinformation in hierfür frei gehaltene Bereiche einsetzen kann, ohne daß sich dadurch die Positionen anderer Seitenteile noch ändern.

              3. Wiederholte Zugriffe auf dasselbe Bild durch HTTP-Header entmutigen, welche dem Browser eine bessere Strategie als den ständigen Zugriff auf die immer gleiche Ressource nahelegen. Letzten Endes kannst Du hier nichts erzwingen, sondern mußt hoffen, daß der Browser mitspielt - und für einen Erstbesucher nützt Dir das auch nichts.

              K.A. was da alles möglich ist?

              Möglich ist, mit JavaScript auf bestimmte Ereignisse zu reagieren - beispielsweise auf das Ereignis "das Dokument wurde vollständig geladen".
              Aber in Deinem Fall ist _auch_ relevant, ob es _sinnvoll_ ist, dem Anwender etwas aufzuzwingen, was er sehr wohl hätte ablehnen wollen, wenn Du ihm die Wahl gelassen hättest.

              Viele Grüße
                    Michael

              --
              T'Pol: I meant no insult.
              V'Lar: Of course not. You're simply speaking your mind ... as you always have.
  2. Hi,

    Stimmt es, dass der Inhalt einer HTML-Seite erst dann angezeigt wird, wenn alle Bilder die in einer JS-Preloadfunktion im body-Tag [<body onLoad="preloadImages..."] stehen, vorausgeladen sind?

    das nicht; aber postLoad einen preLoad durchzuführen, erscheint mir nicht wirklich sinnvoll...

    Cheatah

    --
    X-Will-Answer-Email: No