Folgendes Problem!
Das Bildwechselscript funktioniert in allen Browsern ohne Probleme. Erst unter IE6 bekomme ich eine Fehlermeldung, dass ein "}" fehlt. Mir ist vollkommen schleierhaft, warum es fehlen sollte, da es nur 2 mal geöffnet und auch 2 mal wieder geschlossen wird. Hoffe auf Hilfe von Euch und schicke das Script gleich mit.
VG Medimax
Das Script steht in einer externen *.js Datei.
Wenn das so ist, dann ...
<!--
muss dies einen Fehler erzeugen (zumindest in Browsern, die funktionieren), da "<!--" kein gültiges Javascript ist.
Es ist immer sinnvoll, wenn man Javaskripte schreibt einen Netscape/Mozilla Browser zu verwenden, diese ziegen durch die eingabe von "javascript:" eine genauere Fehlerbeschreibung an.
function swapimage(imgName,newImg){
if ((navigator.appName == 'Netscape' && parseFloat(navigator.appVersion) >= 3) || (parseFloat(navigator.appVersion) >= 4)){
Warum das denn?????
Da du einen Bilderwechsel machen willst, reicht es voll und ganz aus zu prüfen ob der Browser das kann und zwar mit Hilfe von
if(document.images) {
// Browser die die Eigenschaft images nicht kennen können keine Bilder wechseln.
eval('document.' + imgName + '.src = "' + newImg + '"');
eval ist evil und in 99.99% der Fälle unnötig, so auch hier:
document.imgName.src = newImg;
solte das gleiche tun. Sinnvoll kann es noch sein, zu prüfen ob document.imgName existiert.
also alles in allem ist es so besser:
function swapimage(imgName,newImg)
{
// Kann der Browser Bilder wechseln?
if(!document.images) return false;
if(typeof document.imgName) return alert('Fehler!\nDas Bild ' + imgName + 'existiert nicht.');
document.imgName.src = newImg;
return true;
}
Die return werte sind notwendig, da alte Browser ansonsten unterschiedliche Rüchgabewerte monieren und Mozilla davor warnt.
Struppi.