Seperate JS-Dateien arbeiten nicht!
André Gerritzen
- javascript
Ich habe mit Dreamweaver 3 eine recht komplexe Seite erstellt und will die Seite verkleinern indem ich die Javascripts als seperate JS-Datei anlege.Dabei habe mich dabei an die Anweisungen von Selfhtml gehalten. Leider klappt garnichts mehr wenn die Script als JS-Datei laufeb. Wo könnte der Fehler liegen. Ich versuche schon den ganzen Tag den Fehler zu finden.
Hier ist der Teil in der Html-Datei:
<script language="JavaScript" src="scripts.js" type="text/javascript">
</script>
Hier die JS-Datei scripts.js:
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) { //v3.0
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); 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];}
}
Hallo,
also ich hab so einige externe scripts in meinen Files stehen, falls der Pfad stimmt, sollte es klappen.
<SCRIPT language=javascript
src="../include/Pruefziffernberechnung.js"></SCRIPT>
Gruss
Christian
Hallo Christian
Es war zum eine die falsche Pfadangabe schuld und zu anderen wurde im Body ein Layer definiert, während die JS-Datei mit der dazugehörigen Funktion noch geladen wurde. Da gab es auch Probleme.
Danke auc dir.
André
Hallo,
also ich hab so einige externe scripts in meinen Files stehen, falls der Pfad stimmt, sollte es klappen.<SCRIPT language=javascript
src="../include/Pruefziffernberechnung.js"></SCRIPT>Gruss
Christian
Hallo Christian,
versuche doch mal die Javascriptdatei am Ende Deines HTML-Documentes einzubinden. Wenn Du Layer verwendes kann es gut sein, dass der Layer im Javascript aufgerufen wird, dieser aber noch gar nicht definiert ist.
Gruß Jürgen
Hallo Jürgen.
Ihr hattet beide recht.
Erst habe ich die Pfadangabe geändert und dann denn ladebefehl hinter den Body gesetzt.
Zwischen /body und /html stand noch die NS-Layerdefinition eines Werbebanners. Da müßte der Ladebefehl aber vor dem Layer stehen.
Was mich dabei wundert ist, das wenn die Functionen im Head definiert werden es keine Probleme gibt, wird aber die Datei mit den Functionen im Head geladen, laufen die Scripts nicht.
Hallo Christian,
versuche doch mal die Javascriptdatei am Ende Deines HTML-Documentes einzubinden. Wenn Du Layer verwendes kann es gut sein, dass der Layer im Javascript aufgerufen wird, dieser aber noch gar nicht definiert ist.Gruß Jürgen
Seid gegruesst!
Seperate Dateien haben bei mir auch noch nie funktioniert... die separaten jedoch immer :-)
Lernt Deutsch!
Lord Helmchen
Euer Lordschaft!
Wenn wir schon beim Erbsenzählen sind: "Sapperlott" schreibt sich immer noch mit zwei t!
SCNR,
Utz
Hallo Utz!
Und noch genauer :
Nur EIN T, aber ZWEI P.
also : SAPPERLOT!
Deutsche Sprache, schwere Sprache! ;-)
Gruß,
kerki
Seid gegruesst, Utz und Kerki!
Unsere Lordschaft sind ob der neu erworbenen Kenntnisse über die Schreibweise des Wortes "Sapperlot" begeistert und überlegen, Euch bei nächster Gelegenheit in den Adelsstand der dunklen Seite der Tags zu erheben (Sir Utz und Sir Kerki - hört sich doch edel an?).
Lord Helmchen