GreenAssaulter: Image in for-Schleife 7000 Mal zuweisen

Beitrag lesen

Hallo,

ich möchte ein HTML-Dokument, in dem ein kleines Image (~1KB) über 7000 Mal wiederholt vorkommt, im Speicherbedarf minimieren, d. h. die IMG-Tags möglichst kurz machen, indem ich die SRC-Angabe im IMG-Tag spare. Ausserdem empfiehlt es sich natürlich, das Bild einmal vorzuladen. Dazu habe ich folgenden Ansatz:

1. Das Image kommt im Dokument jedesmal gleich in der Form <IMG id="dieID"> vor

2. Das BODY-TAG des Dokuments enthält den JavaScript-Funktionsaufruf onload="setImages()"

3. setImages() sieht folgendermassen aus:

function setImages(){

// Vorladen des Images:
   var bild = new Images();
   bild.src = "/Pfad/DasBild.gif";

// Zuweisen an die IMG-Tags über die ID "dieID" in einer Schleife:
   var coll = document.all.dieID;
   for ( i = 0 ; i < coll.length ; i++){
      coll(i).src = bild.src;
   }
}

Die for-Schleife wird also über 7000 durchlaufen. Auch wenn ich in der Schleife keinerlei Anweisung stehe habe, dauert allein das schon ewig (40 Sekunden auf einem P4 mit 1,8 GHz und 512 MB RAM).

Ist da irgendwas falsch? Gibt es einen alternativen Weg?

Gruss,

Jan