Daniel Bickendorf: JS- Import bei dynamisch erzeugten Seiten Teil 2

Hallo ihr,

bei meiner Website werden einige Seiten dynamisch erzeugt. Wie kann ich nun Funktionen aus einer JS- Datei für diese Seiten bereitstellen? Versuche mit dem Script- Tag scheiterten bei mir bisher. Die Dynamisch erzeugt Datei brachte den Browser oft (aber nicht immer zum Absturz)
Hier meine Funktion dazu:
function Bildfenster (Bild, Hoehe, Breite)
{
 fenster = open("","Anzeigefenster","channelmode=0,dependent=0,directories=0,fullscreen=0,location=0,menubar=0,resizable=0,scrollbars=0,status=0,toolbar=0,width=" + Breite + ",height=" + Hoehe + "");
 fenster.document.open();
 with (fenster.document)
 {
  write("<html>");
  write("<head>");
  write("<title>Bild- "+Bild+"</title>");
  write('<script type="text/javascript" src="bild.js"></script>');
  write("</head>");
  write("<body background="jpg/"+Bild+".jpg" onBlur=window.close()>");
  write("</body>");
  write("</html>");
 }
 fenster.document.close();
}
Ich habe auch versucht die Datei via
<link href="bild.js" type="text/javascript" > zu verknüpfen, aber das funktioniert selbst bei einer normalen Seite nicht. Wer weiß Rat?

Ciao
Daniel Bickendorf

  1. Hallo Daniel,

    Bleib bitte in deinem Thread (->[pref:t=63195&m=358029]) und mach nicht unnötige einen neuen auf.

    Grüße aus Nürnberg
    Tobias

    --
    Selfcode: sh:( fo:) ch:? rl:( br:< n4:& ie:% mo:| va:) de:] zu:) fl:( ss:| ls:[ js:|
  2. Moin,

    Doppelposting hin oder her, ich antworte jetzt mal hier: Die Zeile, die das script-Tag schreibt, enthält schlicht ein paar saublöde fiese kleine Syntaxfehler. Ich hoffe ich kriege das nun richtig hin, ohne das vorher zu testen *grinsel*.

    write('<script type="text/javascript" src="bild.js"></script>');
    muss werden zu:
    write("<script language="JavaScript" type="text/javascript" src="bild.js"></script>");

    Der Punkt ist folgender: Das was da geschrieben werden soll mittels der Funktion write() ist ein String, und der gehört in Anführungszeichen.
    Ohne irgendwelche Maskierungen ginge folgende Kombi aus doppelten und einfachen Anführungszeichen:
    write("<script language='JavaScript' src='bild.js></script>");
    Soll heißen, einfache Anführungszeichen müssen dann nicht maskiert werden, wenn die umgebenden Anführungszeichen doppelte sind. Umgekehrt, also außen einfache und innen doppelte geht nicht.
    Doppelte Anführungszeichen müssen also immer maskiert werden.

    Außerdem fehlt in der Originalversion die Angabe der entsprechenden Scriptsprache.

    Gruß, Uschi