MArtin: popup in document.write definieren

servus!

Habe eigentlich eine simple frage,kenn mich aber mit javascript nicht sonderlich gut aus.

Ich möchte in einem document.write script einen link für ein neues window mit bestimmter größe definieren

document.write(<A HREF="test.html" TARGET="new" width=200,height=200</A></P>');
}

komme ich zu keinem ergebnis popup ist zwar da aber nicht in der vorgesehen größe!

Dank und Gruß

MArtin

  1. Hallo Martin,

    Ich möchte in einem document.write script einen link für ein neues window mit bestimmter größe definieren

    document.write(<A HREF="test.html" TARGET="new" width=200,height=200</A></P>');
    }

    wie würdest Du normalerweise ein Popup-Fenster öffnen? Genauso geht
    es auch, wenn der Quelltext mit JavaScript generiert wird, mußt nur
    daran denken, gegebenenfalls einige bestimmte Zeichen zu maskieren.

    komme ich zu keinem ergebnis popup ist zwar da aber nicht in der vorgesehen größe!

    Kommata, Groß-/Kleinschreibung, Satzzeichen ...

    Viele Grüße,
    Stefan

    1. thx stefan hmm...

      aber zB. mit

      document.write('<a href="test.html" target="neuesfenster" onclick="window.open('','neuesfenster','top=200,screenX=50,left=350,screenY=300,height=263,width=350')">hallo</a></P>');

      wurds auch nix*g*

      1. Hallo MArtin,

        aber zB. mit

        document.write('<a href="test.html" target="neuesfenster" onclick="window.open('','neuesfenster','top=200,screenX=50,left=350,screenY=300,height=263,width=350')">hallo</a></P>');

        wurds auch nix*g*

        Stefan vergass leider noch einen entscheidenden Hinweis, dessen Nicht-Beachtung regelmaessig zu heftigsten Problemen
        fuehrt - bis zum An-sich-selbst-verzweifeln.

        Damit es Dir nicht so ergeht, eine (etwas lange) Erklaerung:

        1. Die Methode 'document.write()' kann einen String (Zeichenkette) als Argument verarbeiten -
        Beispiel: document.write(STRING);

        2. Damit der (kleine, unwissende usw.) Browser, der ja schliesslich unser Skript umsetzen soll, bei STRING nicht nach einer Variablen sucht (und nicht findet ! GROSSES Problem !), werden Strings mit Anfuehrungszeichen hervorgehoben -
        Beispiel: document.write("STRING");

        3. Werte fuer HTML-Attribute werden i.d.R. in Anfuehrungszeichen notiert (es gibt Ausnahmen, wo es nicht NOETIG ist !) -
        Beispiel: onClick="document.write();"

        4. Wenn nun das Beispiel aus 3. noch einen String fuer die Methode document.write() mit auf den Weg bekommen soll, muss
        ein String in einen String eingefuegt werden - also Anfuehrungszeichen in Anfuehrungszeichen :-).
        Dies ist noch kein (grosses) Problem, denn wir kennen IMHO zwei Arten von Anfuehrungszeichen: die einfachen (') und die doppelten (").
        Es gilt die Regel: In doppelten verwende einfache !
        Beispiel: onClick="document.write('STRING');"

        --- Ab jetzt wird es richtig spassig :-)
        Uebrigens, MArtin: Du kannst auch gerne gleich nach unten zum fuer Dich passenden Skript-Vorschlag scrollen ---

        5. Es kann vorkommen, dass wir mit dem Beispiel aus 4. u.a. auch HTML-Attribute mit ihren Werten in das Dokument schreiben lassen wollen - also einen String in einen String in einen String notieren muessen.
        Wir braeuchten also eine ZUSAETZLICHE Art von Anfuehrungszeichen !

        DENN: in Martins's Versuch liest der (kleine, unwissende usw.) Browser z.Zt. noch folgendes:

        document.write('<a href="test.html" target="neuesfenster" onclick="window.open('

        ...das kennt er - die Methode document.write arbeitet ja mit einem String - aber dann ist er heftig verwirrt, denn es folgt NOCH ein String, ohne einen Hinweis (wie z.B. einen Verknuepfungsoperator "+"), was er mit ihm tun soll:

        ','

        ...und er fragt sich, wozu der gut ist - und vor allem: "Was soll ich (kleiner, unwissender usw.) damit machen ?".
        ...und dann kommt es noch dicker - bzw. verwirrender, naemlich KEIN String, also eine Variable (?):

        neuesfenster

        ...dass dann noch einmal ein String kommt, mit dem er nichts anfangen kann:

        ','

        ...macht ihm seinen Job nicht wirklich einfacher, genauso wie die dann folgende Aufreihung von Variablen mit Wertzuweisungen (?):

        top=200,screenX=50,left=350,screenY=300,height=263,width=350

        ...mit dem daran gehaengten String

        ')">hallo</a></P>'

        ...ihm (dem kleinen usw. Browser) das gesamte Konstrukt nicht wirklich verdaulicher macht.

        6. Der bislang einzige von mir aus dieser Zwickmuehle gefundene Ausweg basiert darauf, dass der Browser NACH dem Ausfuehren von JS-Anweisungen die HTML-Anweisungen ausfuehrt - eben auch evtl. maskierte Sonderzeichen umwandelt.
        ...und " koennen mit " maskiert werden :-)

        ---Achtung MArtin !---

        Das fuehrt dann zu folgendem Beispiel:

        document.write("<a href='test.html' target='neuesfenster' onclick='window.open("","neuesfenster","top=200,left=350,height=263,width=350");return false;'>hallo</a>");

        Hier gibt es dann mit maskierten Anfuehrungszeichen umschlossene Strings in mit einfachen Anfuehrungszeichen umschlossenen Strings in mit doppelten Anfuehrungszeichen umschlossenen Strings - also: Strings in Strings in Strings.

        7. Wen es interessiert: es gibt auch noch Entitaeten fuer einfache Anfuehrungszeichen (‘ und ’) :-)

        In diesem Sinne (froehliches Schachteln)
        gruesse
        rainer groth

        --
        (einer der letzten bauhaeusler)