Image Caching
Jeg har et javascript object som generer en liste bestående af et ikon, en overskrift og et link. mit problem er at disse lister i meget stor udstrækning bruger de samme ikoner, og jeg vil derfor gerne cache dem. Jeg har prøvet nedenstående. Det cacher godt nok som tænkt, men det er kun den sidste forekomst af et cachet billede som dukker op i listen (dvs hvis der er 10 ens ikoner er det kun sidste post i listen som har et ikon)Kan det være noget med referencer til objektet, skal objektet måske kopieres før det appendes til list html'en ?
var d = this.objFrame.document;
var oT = d.createElement("table");
oT.width = "100%";
oT.id = "id_" + this.objName;
oT.cellPadding = 0;
oT.cellSpacing = 0;
var oB = d.createElement("tbody");
oB.className = "listBody";
var e = this.arrElements;
for (var i=0;i<e.length;i++){
var oR = d.createElement("tr");
oR.name = this.objName + "row" + i;
oR.frame = this.objFrame;
oR.blnLeft = this.blnLeftColor;
oR.link = e[i][2];
var oC1 = d.createElement("td");
oC1.id = this.objName + "row" + i + "a";
oC1.className = (this.blnLeftColor)? "listIcon" : "listIconPlain";
if (!arrImageCache[e[i][1]]){
// No image cached, do it now!
var oI = d.createElement("img");
oI.src = "/icon/" + e[i][1];
arrImageCache[e[i][1]] = oI;
}
oC1.appendChild(arrImageCache[e[i][1]]);
oR.appendChild(oC1);
oB.appendChild(oR);
}
oT.appendChild(oB);
return oT;