function MM_swapXYZ() nicht definiert

acquire

Mitglied
Hallo!

der Web Developer von Mozilla sagt, das in diesem Script ganz am Ende ein Fehler ist.
Angeblich sind die ganzen swap Teile nicht definiert und eine Endklammer wird nach dem body vermisst.
Ich verstehe leider nichts von JavaScript.
Könnt ihr das verbessern/mir erläutern?

Der Code:
Code:
<script language="JavaScript" type="text/JavaScript">
<!--
function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}
}

function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}
//-->
</script>

Danke im Voraus für Alles!
 
Sorry, irgendwie habe ich die automatische Benachrichtigung nicht eingestellt.
Im Anhang ist die HTML Datei als txt.

Danke schonmal im Voraus!
 

Anhänge

  • artikel.txt
    11,8 KB · Aufrufe: 43
In dem Anhang scheint es korrekt zu sein:confused:

Auf dem, was du online hast, ist der Fehler aber zu sehen....da fehlt in der folgenden Funktion eine Klammer(habs rot markiert)

Code:
function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}
 
Danke, das war es.

Warum das im Beispiel wieder richtig ist weiß ich nicht...

Edit: Ich weiß es jetzt doch. Das CMS, welches ich verwende, hat die eine Klammer immer gelöscht. Und wenn man das Template nocheinmal überarbeitet hat, dann ist sie auch in der Ausgabe verschwunden...
 
Zuletzt bearbeitet:
Zurück