Robbytobby: Script verzögert ausführen

Hallo,

für eine neue Seite entwerfe ich gerade ein Menü, das aus rund 40 Unterpunkten besteht. Jeder Menüpunkt ist eine ca 800 Bytes große gif Datei. Beim Mouseover soll das Gif durch eine andere Grafik (Highlight) ersetzt werden. Das klappt jetzt soweit alles prima.

Im Web wird jedoch beim erstmaligen benutzen des Menüs der Rollover Effekt zerstört, da die Rollover Bilder erst nachgeladen werden müssen. Also musste ein Image Preloader her. War ja auch fix geschrieben, mit einer function preload (). Problem: Setze ich den Preloader ein, sieht der Besucher beim erstmaligen Besuch der Seite für meinen Geschmack eine zu lange Zeit (etwa 5 - 6 Sekunden) nix, da ja zunächst die Bilder vorgeladen werden.

Nun suchte ich nach einer Möglichkeit, das zunächst der Body Content geladen ist, und erst wenn die Seite fertig aufgebaut ist, im Hintergrund die Rollover Grafiken geladen werden. Laut dieser Seite:

http://195.37.29.130/weblab/seminare/javascript/index.php?fld=themen&fil=bilder#preload

(ganz unten) sollte das eigentlich genau so ablaufen, wenn ich den onLoad Befehl für die Funktion in den Body-Tag packe.

Allerdings sieht das so aus. Packe ich die Funktion in den Head, wird die function schon ausgeführt, bevor der Rest geladen ist. Packe ich wie auf der gennanten Seite erwähnt die function aus dem Head Bereich in den Body, wird sie gar nicht mehr ausgeführt. In beiden Fällen habe ich die onLoad Funktion im Body-Tag.

Wer weiß Rat?

  1. Einfach ohne PreLoader!

    StyleSheet!!!

    Im Header:

    <style type="text/css">
    <!--
    .vorladeBilder {
      display:none;
    }
    -->
    </style>

    Im Body:

    <div class="vorladeBilder">
      <img src="Hover1.gif" />
      <img src="Hover2.gif" />
      <img src="Hover3.gif" />
      <!-- U.S.W. -->
    </div>

    Ich glaub dann lädt er die Bilder, aber sie werden nicht angezeigt!

    1. Einfach ohne PreLoader!

      StyleSheet!!!

      Genial, danke!