Javascript-Code ausführen, wenn ein Bild geladen wurde

Kategorie Webentwicklung
Inhalt
Das ist, was funktioniert, wenn man etwas tun will, sobald ein Bild geladen wurde:
   img=document.createElement("img);
   img.onload=function() {
       img.onload=null; // verhindert in komplexen Situationen Schmerzen
       tu was;
   }
   
   img.src=Source-URL;
   if (img.complete) {
       img.onload(); // Hinweis: übergibt nicht this und so.
   }
In Worten:
  1. onload *vor* dem Ändern des .src setzten.
  2. img.complete auf jeden Fall abfragen, auch wenn man das für völlig überflüssig hält.

Wenn man sich nicht daran hält, wird man sich irgendwann wundern - je nach Browsern, Zustand des Caches und allgemeiner Boshaftigkeit der Maschine.
Diashow
Blog