Preloading mit dem Javascript-Image-Objekt

In der Praxis wird man wahrscheinlich mehr als nur ein Bild im Voraus laden müssen, zum Beispiel für eine Menüleiste mit mehreren Rollovers, oder wenn man einen nahtlosen Animationseffekt erzeugen will. Kein Problem – man muss dazu nur wie im folgenden Beispiel auf Javascript-Arrays zurückgreifen:

Im obigen Beispiel definiert man eine Variable i sowie ein Image()-Objekt namens imageObj. Dann definiert man ein neues Array namens images[], wobei jedes Array-Element den Dateinamen des im Voraus zu ladenden Bildes speichert. Und schließlich erstellt man eine for()-Schleife zum Durchlaufen des Arrays und weist jedes Bild dem Image()-Objekt zu, so dass es in den Cache geladen wird.

Der Event-Handler onLoad()

Wie viele andere Objekte in Javascript verfügt auch das Image()-Objekt über einige Event-Handler. Der nützlichste von ihnen ist zweifellos der onLoad()-Handler, der aufgerufen wird, sobald das Bild vollständig geladen ist. Dieser Handler kann mit einer eigene Funktion verknüpft werden, um bestimmte Aufgaben auszuführen, nachdem das Bild geladen ist. Das folgende Beispiel illustriert dies, indem es eine Meldung "Bitte warten…" ausgibt während das Bild lädt und den Browser nach Beendigung des Ladevorgangs an eine neue URL weiterleitet.

Natürlich kann man auch ein Array mit mehreren Bildern erstellen, das durchlaufen wird, und jedes einzelne Bild im Voraus laden, wobei man bei jedem Durchgang verfolgen kann, wie viele Bilder bereits geladen sind. Der Event-Handler kann so programmiert werden, dass er den Browser auf die nächste Seite weiterleitet (oder eine andere Aufgabe ausführt), sobald alle Bilder geladen sind.

Page: 1 2 3

ZDNet.de Redaktion

Recent Posts

MadMxShell: Hacker verbreiten neue Backdoor per Malvertising

Die Anzeigen richten sich an IT-Teams und Administratoren. Ziel ist der Zugriff auf IT-Systeme.

2 Tagen ago

April-Patches für Windows legen VPN-Verbindungen lahm

Betroffen sind Windows 10 und Windows 11. Laut Microsoft treten unter Umständen VPN-Verbindungsfehler auf. Eine…

2 Tagen ago

AMD steigert Umsatz und Gewinn im ersten Quartal

Server-CPUs und Server-GPUs legen deutlich zu. Das Gaming-Segment schwächelt indes.

2 Tagen ago

Google stopft schwerwiegende Sicherheitslöcher in Chrome 124

Zwei Use-after-free-Bugs stecken in Picture In Picture und der WebGPU-Implementierung Dawn. Betroffen sind Chrome für…

4 Tagen ago

Studie: 91 Prozent der Ransomware-Opfer zahlen Lösegeld

Die durchschnittliche Lösegeldzahlung liegt bei 2,5 Millionen Dollar. Acht Prozent der Befragten zählten 2023 mehr…

4 Tagen ago

DMA: EU stuft auch Apples iPadOS als Gatekeeper ein

Eine neue Analyse der EU-Kommission sieht vor allem eine hohe Verbreitung von iPadOS bei Business-Nutzern.…

4 Tagen ago