andre: JavaScript Image Preloader ?!

hallo alle.

ich habe folgendes problem. da ich sehr große hintergrundbilder habe (ca 90-110kb) möchte ich einen preloader davor schalten. so ähnlich wie in flash, halt nur in javascript (balkenanzeige von 0-100%) wenn 100% erreicht sind soll das bild erst erscheinen.

habt ihr schon mal so ein script gesehen bzw besser gefragt - geht das in javascript überhaupt?

vorladen wäre vielleicht noch eine idee - fände aber so einen "loader" schöner.

anmerkung: die bilder kann ich leider nicht von der datengröße verkleinern.

vielen danke für jeden tipp.

andré

p.s.: bei dhtmlcentral.com hab ich nichts gefunden....

  1. Hi,

    Javascript kann AFAIK nur feststellen, *ob* ein Bild geladen ist, aber nicht den Übertragungsstatus.
    Das Vorladen solch großer Bilder verursacht auch u.U. unnötigen Traffic - sowohl beim Besucher als auch beim Server (den Du dann ggfls. bezahlen mußt). Abgesehen davon: einem Besucher wird eine Ladeanzeige wenig helfen oder auf der Seite halten. Besser ist es da, wenn der Inhalt der Seite schon vor dem Laden des Hintergrundbildes nutzbar ist und das solltest Du doch mit der Vorgabe einer passenden Hintergrundfarbe erreichen können.

    freundliche Grüße
    Ingo

    1. Hallo Ingo,

      hast schon recht. Aber es wäre sehr schon wenn diese Bilder auch bleiben :)

      Kann ich das Problem lösen indem ich die Bilder in der ersten Seite vorlade? Das kann ich doch sicher in JS machen, oder? Ich denke sowas schonmal irgendwo gelesen zu haben.

      Trotzdem vielen Dank
      André

    2. Hallo nochmal.

      Ich habe jetzt so eine Seite gefunden:

      www.wolf128.com/d

      Viele Grüße
      André

      1. Hi,

        Ich habe jetzt so eine Seite gefunden:

        www.wolf128.com/d

        abgesehen davon, daß Besucher ohne Javascript hier ewig warten müssen ohne je ans Ziel zu kommen, versucht diese Seite genau das, was ich Dir schon gesagt habe, nämlich die Anzahl der bereits geladenen Grafiken zu zählen. Bei einer einzigen Grafik wechselt dann die Anzeige von 0% direkt auf 100%.

        Aber nochmals: wozu muß die Grafik vorgeladen werden? Wenn Du _zusätzlich_ zur Hintergrundgrafik eine Hintergrundfarbe definierst, sollte die Seite auch während des Ladens der Grafik vernünftig nutzbar sein.

        freundliche Grüße
        Ingo

  2. ich habe folgendes problem. da ich sehr große hintergrundbilder habe (ca 90-110kb) möchte ich einen preloader davor schalten. so ähnlich wie in flash, halt nur in javascript (balkenanzeige von 0-100%) wenn 100% erreicht sind soll das bild erst erscheinen.

    habt ihr schon mal so ein script gesehen bzw besser gefragt - geht das in javascript überhaupt?

    Ja das geht.
    Hat aber nicht unbedingt den von dir gewünschten Effekt, sondern kann unter Umständen dazu führen das deine Besucher die Grafiken doppelt laden müssen. Davon sind gerade Besucher mit dem IE betroffen da er hinsichtlich des Cache Verhalten nicht immer das richtige macht oder falls jemand seinen Cache ausgestellt hat.
    So oder so wird die Menge der Daten auf jeden Fall größer, als ohne preloader.

    Preloader können Sinn machen, wenn du unbedingt ein JS Galerie benutzen möchtest und im Hintergrund das nächste Bild vorlädst.

    Aber in deinem Fall sind sie unnötige Arbeit für dich, unnötiger Traffic für deinen Server, längere Wartezeit für deine Besucher und u.U. ist deine Seite gar nicht mehr nutzbar für Besucher.

    Struppi.