benji: simples Problem - wo ist der Fehler ? gibt mal nen tipp ab ...

Hallo Forum !

Es ist soooo einfach, doch es geht irgendwie nicht: er denkt, win1 würde nicht existieren oder so was komisches. Also:

....
function flyw2k()
{
 var win1 = window.open("", "f1", "width=200,height=100,left=70,top=70,fullscreen=yes");
// win1.document.open();
// win1.document.write("<html><head><script language="Jscript">//opener.finit();</script></head><body> </body></html>");
// win1.document.close();
 finit();
}

function finit()
{
  win1.resizeTo(200, 100);
  win1.moveTo(90, 90);
}
.....

ich habe sogar schon, wie man sieht auskommentiert, versucht, aus dem geöffneten Fenster heraus es zu verschieben und so was. Kommt mir bitte nicht mit externe Datei wo es dann geschieht: Ich will keine externe DAtei, da ich nur EINE html-Datei letzenendes will und in der soll alles passieren. Frage: Warum kann ich mit win1.resizeTo nicht die window-Klasse im win1-Fenster aufrufen ?

Bitte mal schnell nen Tipp,

benji

  1. Hi,

    function flyw2k()
    {
    var win1 = window.open("", "f1", "width=200,height=100,left=70,top=70,fullscreen=yes");

    die Variable existiert im Scope dieser Funktion, stirbt also nach Beendigung der selben und ist auch während der Laufzeit der Funktion anderen Funktionen nicht bekannt. Deklariere sie global. Zudem benötigt window.open() unbedingt eine URL, auch wenn diese "about:blank" lautet. "Es funktioniert bei mir" ist kein Argument.

    // win1.document.write("<html><head><script language="Jscript">//opener.finit();</

    An exakt dieser Stelle, nämlich beim Auftreten des ersten "</", endet der <script>-Bereich. Maskiere den Slash durch einen Backslash, dann existiert diese Zeichenkette nicht mehr. JScript ist eine Microsoft-Erfindung, vermutlich meinst Du JavaScript; und der <script>-Tag benötigt zwingend ein passendes type-Attribut.

    script></head><body> </body></html>");

    Ohne einen <title>-Tag im <head>-Bereich ist ein HTML-Dokument nicht valide.

    win1.resizeTo(200, 100);
      win1.moveTo(90, 90);

    Es ist nicht nett, Fenster in Größe und Position zu verändern. Der Benutzer hat sich seine Lieblingsgröße gewählt; alles andere sollte vermieden werden.

    Cheatah

    --
    X-Will-Answer-Email: No
    X-Please-Search-Archive-First: Absolutely Yes
    1. Hallo,

      win1.resizeTo(200, 100);
        win1.moveTo(90, 90);

      Es ist nicht nett, Fenster in Größe und Position zu verändern. Der Benutzer hat sich seine Lieblingsgröße gewählt; alles andere sollte vermieden werden.

      Warum kommt das resizeTo überhaupt - win1 ist doch das Pop-Up was diese Größe bereits hat durch die window.open-Parameter!?!

      cu Benedikt Loepp

    2. Danke für deine Antwort, aber es dürfte dir doch aufgefallen sein, dass dieser JSCRIPT auszug 100%ig NUR für MS ist ! z.B. an dem fullscreen, etc. !

      aber danke, es ist klar: mein fenster-handle ist nicht global-daher der fehler !

      benji

      1. Hi,

        Danke für deine Antwort, aber es dürfte dir doch aufgefallen sein, dass dieser JSCRIPT auszug 100%ig NUR für MS ist ! z.B. an dem fullscreen, etc. !

        nein, das war mir in der Tat nicht aufgefallen. Ich wollte unabhängig davon auf die Konsequenz hinaus, dass der Code in nicht-MS-Browsern mit hoher Wahrscheinlichkeit, jedoch keinesfalls mit Sicherheit, nicht ausgeführt ist, selbst wenn er in Deinem Sinne (oder zumindest ähnlich) ausgeführt werden könnte.

        Cheatah

        --
        X-Will-Answer-Email: No
        X-Please-Search-Archive-First: Absolutely Yes
        1. nein, das war mir in der Tat nicht aufgefallen. Ich wollte unabhängig davon auf die Konsequenz hinaus, dass der Code in nicht-MS-Browsern mit hoher Wahrscheinlichkeit, jedoch keinesfalls mit Sicherheit, nicht ausgeführt ist, selbst wenn er in Deinem Sinne (oder zumindest ähnlich) ausgeführt werden könnte.

          Das Ding läuft dann 1000%ig im IE, da es als .hta laufen wird #

          benji

  2. abend,

    function flyw2k()
    {
     var win1 = window.open("", "f1", "width=200,height=100,left=70,top=70,fullscreen=yes");
    // win1.document.open();
    // win1.document.write("<html><head><script language="Jscript">//opener.finit();</script></head><body> </body></html>");
    // win1.document.close();
     finit();

    ----------^

    }

    function finit()
    {
      win1.resizeTo(200, 100);
      win1.moveTo(90, 90);
    }
    .....

    ...müsstest du nicht vielleicht an markierter stelle die variable
    win1 übergeben ? dann dürfte es in init() eigentlich bekannt sein...
    oder du globalisierts die variable am anfang von init().. auch möglich.
    zudem lassen sich fenster doch auch über ihren namen ansprechen - in
    deinem fall "f1" - AFAIK...

    HIH

    mfg,
    (tanz das)
    Z.N.S.

    --
    <img src="http://www.dmp-web.de/comunicout/neubauten.gif" border="0" alt="">