src eines bilds austauschen - warum nicht im ie?
soc
- javascript
hi!
ich will mit folgendem code ein bild austauschen, es funktioniert in allen browsern außer im ie!
--------------
document.images[imgname].src=new_img_src;
--------------
gibts da noch hoffnung?
danke!
soc
Hi,
ich will mit folgendem code ein bild austauschen, es funktioniert in allen browsern außer im ie!
"funktioniert nicht" funktioniert nicht. Fehlerbeschreibung, bitte.
gibts da noch hoffnung?
Das erinnert mich an den Mann, der mit 'nem halben Hähnchen unterm Arm zum Tierarzt geht und fragt: "Ist da noch was zu retten?"
Cheatah
Hi,
ich will mit folgendem code ein bild austauschen, es funktioniert in allen browsern außer im ie!
"funktioniert nicht" funktioniert nicht. Fehlerbeschreibung, bitte.
gibts da noch hoffnung?
Das erinnert mich an den Mann, der mit 'nem halben Hähnchen unterm Arm zum Tierarzt geht und fragt: "Ist da noch was zu retten?"
Cheatah
also ich hab da eine bildergalerie mit thumbnails. wenn ich auf eins draufklicke wird die src des bildes durch die zum großen originalbild ersetzt.
wenn ich jedoch im internet explorer auf ein thumbnail draufklicke wird das bild weiß.
wenn ich das große bild vorher schon anderweitig betrachtet hatte, dann lädt es auch der ie richtig.
es scheint, als würde der ie, wenn man die src eines bildes lädt, das das bild nicht dazu laden.
mfg
soc
Hallo,
also ich hab da eine bildergalerie mit thumbnails. wenn ich auf eins draufklicke wird die src des bildes durch die zum großen originalbild ersetzt.
wenn ich jedoch im internet explorer auf ein thumbnail draufklicke wird das bild weiß.
wenn ich das große bild vorher schon anderweitig betrachtet hatte, dann lädt es auch der ie richtig.
Lade das Bild vor, indem Du mit new Image() ein Image-Objekt erstellst und dessen .src Eigenschaft den Pfad zum großen Bild zuweist. Dann wechselst Du onclick nur document.images[...].src mit DeinImageObject.src.
Hier wird das in mehreren Beispielen so gemacht und funktioniert hier auch im IE.
viele Grüße
Axel
Lade das Bild vor, indem Du mit new Image() ein Image-Objekt erstellst und dessen .src Eigenschaft den Pfad zum großen Bild zuweist. Dann wechselst Du onclick nur document.images[...].src mit DeinImageObject.src.
Hier wird das in mehreren Beispielen so gemacht und funktioniert hier auch im IE.
viele Grüße
Axel
das mit new Image() vor dem eigentlichen austauscehn der src habe ich schon versucht, das problem ist, dass der browser das bild nicht so schnell geladen kann, wie es benötigt wird. im ie kann ich dann exakt 3 mal klicken:
1. klick: bild wird weiß, aber new Image() ausgeführt
2. klick: thumbnail wird wieder angezeigt
3. klick großes bild wird angezeigt, dass er mit new image() nun endlich geladen hat.
danke für die mühe!
soc
Hallo soc
das mit new Image() vor dem eigentlichen austauscehn der src habe ich schon versucht, ...
Direkt vor dem Austauschen also durch den Event ausgelöst bringt das auch nichts. Du musst die Imageobjekte beim oder direkt nach dem Laden der Seite anlegen und mit den Grafiken füllen. Dann stehen sie beim Feuern der Events sofort zur Verfügung.
Das Prinzip siehst du bei Dynamische grafische Buttons. Dieses Beispiel dürftest du ohne Probleme für dich anpassen können.
Auf Wiederlesen
Detlef
Hallo soc
das mit new Image() vor dem eigentlichen austauscehn der src habe ich schon versucht, ...
Direkt vor dem Austauschen also durch den Event ausgelöst bringt das auch nichts. Du musst die Imageobjekte beim oder direkt nach dem Laden der Seite anlegen und mit den Grafiken füllen. Dann stehen sie beim Feuern der Events sofort zur Verfügung.
Das Prinzip siehst du bei Dynamische grafische Buttons. Dieses Beispiel dürftest du ohne Probleme für dich anpassen können.
Auf Wiederlesen
Detlef
mh, das problem ist, dass das ganze eine thumbnail-galerie mit oft mehr als 300 bildern ist, wenn ich da die bilder vorlade, kann ich mir die thumbnails auch sparen ...
egal ... funktionierts im ie eben nicht, darauf nehm ich keine rücksicht mehr.
danke!
gruß
soc
Hallo,
mh, das problem ist, dass das ganze eine thumbnail-galerie mit oft mehr als 300 bildern ist, wenn ich da die bilder vorlade, kann ich mir die thumbnails auch sparen ...
Probier mal einen "Tracker" anzusetzen. Z.B. so:
function zeigeBild(new_img_src){
var myImage = new Image();
myImage.src = new_img_src;
if (myImage.width && myImage.height) {
document.images["grossBild"].src = myImage.src;
} else {
myImage.onload = function(){
document.images["grossBild"].src = myImage.src;
alert("bin da");
};
}
}
viele Grüße
Axel