Hallo zusammen!
Ich habe ein merkwürdiges Problem, welches zwar der Onlinewelt bekannt ist, aber ich irgendwie absolut keine Lösung dafür finde.
Es geht darum ein Bild per Klick auszutauschen und auch dann erst das Bild nachzuladen. Mein Code sieht wie folgt aus:
Bei Klick wird also das vorhandene Bild mit 'preload.gif' ersetzt, dann wird das neue Bild geladen und wenn die Prüfung mit onload() true ist wird das Bild ausgetauscht.
Das funktioniert im FF tadellos und im IE auch, allerdings nur ACHTUNG! wenn das Bild noch nicht im Cache liegt sondern neu geladen werden muss.
Kann ich denn irgendwie feststellen ob das Bild nicht doch schon vorliegt? Ich würde nur ungern bereits beim Seitenaufruf alle Bilder vorladen. Falls Ihr keine Idee habt werde ich das wohl mit AJAX machen müssen...
Danke für Eure Hilfe!
Ich habe ein merkwürdiges Problem, welches zwar der Onlinewelt bekannt ist, aber ich irgendwie absolut keine Lösung dafür finde.
Es geht darum ein Bild per Klick auszutauschen und auch dann erst das Bild nachzuladen. Mein Code sieht wie folgt aus:
Code:
function togglePic(source) {
// set preload gif
document.getElementById('bigPic').src = "images/preload.gif";
picture = new Image;
picture.src = "media/" + source;
// load picture
picture.onload = function() {
document.getElementById('bigPic').src = picture.src;
}
}
Bei Klick wird also das vorhandene Bild mit 'preload.gif' ersetzt, dann wird das neue Bild geladen und wenn die Prüfung mit onload() true ist wird das Bild ausgetauscht.
Das funktioniert im FF tadellos und im IE auch, allerdings nur ACHTUNG! wenn das Bild noch nicht im Cache liegt sondern neu geladen werden muss.
Kann ich denn irgendwie feststellen ob das Bild nicht doch schon vorliegt? Ich würde nur ungern bereits beim Seitenaufruf alle Bilder vorladen. Falls Ihr keine Idee habt werde ich das wohl mit AJAX machen müssen...
Danke für Eure Hilfe!