ChrisB: Wie auf Preload Image zugreifen?

Beitrag lesen

Hi,

var i = 0;

imageObj = new Image();

images = new Array();
     images[0]="image1.jpg"
     images[1]="image2.jpg"
     images[2]="image3.jpg"

for(i=0; i<3; i++)
     {
          imageObj.src=images[i];
     }


>   
> Damit werden die Bilder in den Browsercache geladen.  
  
Da wäre ich mir nicht so sicher - du benutzt nur ein Image-Objekt, und weist dem blitzschnell nacheinander neue Bildadressen zu.  
Ob dabei alle Browser alle Bilder laden, halte ich für zweifelhaft - eher wahrscheinlich erscheint mir, dass das Laden eines Bildes abgebrochen werden könnte, wenn du die neue Adresse zuweist.  
  
"Normalerweise" benutzt man für sowas so viele Bildobjekte, wie auch Bilder vorzuladen sind.  
  

> Angenommen, ich will jetzt einem Image der Seite eine neue src zuweisen, kann ich dann einfach sagen  
>   
> ~~~javascript
  

>   document.img01.src='image1.jpg'  
> 

oder muss ich, um das vorgeladene Bild aus dem Browser anzuzeigen

document.img01.src=imageObj.src


>   
> notieren?  
  
Das ist im Grund wurscht.  
Die Image-Objekte in JavaScript dienen nur zum Vorladen, danach hat der Browser die Ressource im Cache - und er identifiziert sie natürlich anhand ihres URLs.  
Wie du jetzt einem Bild im HTML einen URL zuweist, ist vollkommen egal.  
  
MfG ChrisB  
  

-- 
Light travels faster than sound - that's why most people appear bright until you hear them speak.