von Ori |
Es könnte klappen, wenn Du DOM-Befehle nutzt.
Ansonsten lädt der Internet Explorer die Bilder sicherlich, wenn der <div> schon sichtbar ist, jedoch nach links außerhalb des Sichtfeldes verschoben ist und bei Bedarf an die richtige Stelle gerückt wird. |
von goali |
Hallo,
mein Problem betrifft das caching von Bildern im Internet Explorer. Habe eine Seite mit einem Menue in einem "Navigationslayer" ( realisiert mit <div>-Tags ). Wird nun ein Menue geladen, so fordert der Internet Explorer ( bei mir 6.0 ) jedes Navigationsbildchen separat vom Webserver an. Bei Netscape 7 wird jedes Bild nur einmalig angefordert und im Cache zwischengespeichert.
Was ich schon versucht habe, um den IE auch zum cachen zu bringen ist die Verwendung des "expires" Meta-Tags und eine Preload - funtkion für die Images. Die Sachen funktionieren ohne die div - Tags, sobald ich diese aber verwenden möchte, legt der IE die Bilder nicht mehr im zwischenspeicher ab und holt jedes einzeln vom Webserver.
Hat jemand schon Erfahrung oder Tipps
Danke schon mal im Voraus.
Snippet eines einfachen Tests:
<html>
<head>
<title></title>
<meta http-equiv="Expires" content="1000"/> <script type="text/javascript">
<!--
var bild1;
var bild2;
var bild3;
var bild4;
function loadImages() {
bild1=new Image();
bild2=new Image();
bild3=new Image();
bild4=new Image();
bild1.src="bilder/geschlossen.gif";
bild2.src="bilder/leer.gif";
bild3.src="bilder/normal.gif";
bild4.src="bilder/offen.gif";
}
function printBild(){
out="";
for (i=0; i<10; i++) {
out+="<img src='"+bild1.src+"' border=0><br/><img src='"+
bild2.src+"' border=0><br/><img src='"+bild3.src+
"' border=0><br/><img src='"+bild4.src+
"' border=0><br/><br/><br/>";
}
return out;
}
function insertPrinted() {
tmp=printBild();
document.getElementById("layer1").innerHTML=tmp;
}
//-->
</script>
</head>
<body onload="loadImages(); insertPrinted()">
<div id="layer1" class="layer1">
</div>
</body>
</html>
|
|