wolli: was mache ich falsch ??bitte bitte HILFE

mein script soll von der Hauptseite über einen Link ein popup öffnen
und beim schließen des popup soll die Hauptseite wechseln.
Das script soll in der Hauptseite liegen.

hab es hinbekommen,mit IE läuft es aber Netscape hängt sich auf.

was mache ich falsch ??

<!--
function CheckOpen() {
var InfoWin = window.open("http://gigatrack.de", "Zweitfenster", "width=300,height=200,scrollbars");
while(InfoWin.closed == false) {
InfoWin.focus();
}
location.href=("http://domainunion.de");
 }

//-->

  1. <!--
    function CheckOpen() {
    var InfoWin = window.open("http://gigatrack.de", "Zweitfenster", "width=300,height=200,scrollbars");
    while(InfoWin.closed == false) {

    das soeht mir ein bischen kritisch aus...., du hast in deinem do teil der while schleife keine abbruchbedingung.... das heisst er führt jenen teil so oft HINTEREINANDER aus, bis der while teil nicht mehr wahr ist.

    Denke du willst erreichen, dass dein Zweitfenster immer im vordergrund bleibt... mach dann mal lieber

    Zweitfenster.captureEvents(Event.blur);
    Zweitfenster.onblur = Zweitfenster.focus();

    aber erst nachdem es zweitfenster auch gibt.. .sonst gibts nen laufzeitfehler...

    viel erfolg

    1. es geht nicht um die focus geschichte,
      die whileschleife überpüft ob das Fenster geschlossen wird
      und läuft solange, wie das Fenster geöffnet ist.
      IE hat keine Probleme damit.
      Netscape reagiert auf nichts (link anklicken)im Zweitfenster
      solange die whileschleife aktiv ist.

      Kann ich das irgendwie anderst lösen ??

      Dankeschön
      wolli

      1. es geht nicht um die focus geschichte,
        die whileschleife überpüft ob das Fenster geschlossen wird
        und läuft solange, wie das Fenster geöffnet ist.
        IE hat keine Probleme damit.
        Netscape reagiert auf nichts (link anklicken)im Zweitfenster
        solange die whileschleife aktiv ist.

        ...weil er beschäftigt ist, die While-Schleife dauernd auszuführen. Das ist eine sehr uneffektive Art, Rechenzeit zu verbraten. ;)

        Kann ich das irgendwie anderst lösen ??

        Im Popup mit OnUnload arbeiten und dadurch die Hauptseite ändern. Entweder opener.location.href ändern, oder mit opener.Funktionsname eine dort definierte Funktion aufrufen.

        Dankeschön
        wolli

        - Sven Rautenberg

  2. Hallo wolli,        <-- Nett, so eine Begrüßung, nicht wahr? (</faq/#Q-05a>)

    mein script soll von der Hauptseite über einen Link ein popup öffnen
    und beim schließen des popup soll die Hauptseite wechseln.
    Das script soll in der Hauptseite liegen.

    hab es hinbekommen,mit IE läuft es aber Netscape hängt sich auf.

    was mache ich falsch ??

    viele hier mögen solche Popup-Orgien nicht so gerne, aber das steht auf einem anderen Blatt.

    <!--
    function CheckOpen() {
    var InfoWin = window.open("http://gigatrack.de", "Zweitfenster", "width=300,height=200,scrollbars");
    while(InfoWin.closed == false) {
    InfoWin.focus();
    }
    location.href=("http://domainunion.de");
    }

    //-->

    Wenn Du mal unter http://selfhtml.teamone.de/javascript/objekte/window.htm#open schaust, dann siehst Du, daß mit den Angaben zum Fenstertyp noch irgendetwas nicht ganz korrekt ist. Ein Tip dazu: Schau Dir mal "scrollbars" an.

    Vielleicht konnte ich Dir weiterhelfen, wenn nicht, dann gib eine Antwort und präzisiere Deine Frage (Fehlermeldung o.Ä.)

    Bis denndann            <-- Ist auch schön, so eine Schlußformel (</faq/#Q-05c>)

    Michael N.

    1. öhm, ich korigiere mich... hab auch nen denkfehler in meiner antwort....

      schliesse  mich  michael an

      sorry

      Mastermind

    2. Hallo Michael,hallo Forenbesucher,

      sorry an die Ansprache hab ich wirklich nicht gedacht.
      Ich entschuldige mich hiermit offiziell.

      meine popup Geschichte hat nichts!!! mit Werbung zu tun
      ich arbeite an einem automatischen htaccess Vergabescript.
      auf der Hauptseite sieht man seine ganzen Verzeichnisse
      und wenn man eines davon schützen will drückt man auf einen
      Button und dann soll ein popup aufgehen wo man den User und
      das Passwort angeben kann. nach schließen des Fensters
      muß die Hauptseite automatisch aktualisiert werden, damit man den  Schutz des Verzeichnisses auch angezeigt bekommt.

      Da ich mich in javascript nicht so gut auskenne
      Bitte ich Euch rechtherzlich um Hilfe.

      nette Grüße an alle
      wolli

      Hier nochmal mein Script

      <!--
      function CheckOpen() {
      var InfoWin = window.open("http://just-cgi.de", "Zweitfenster", "width=300,height=200");
      while(InfoWin.closed == false) {
      }
      location.href=("http://wild.wlf.de");//oder reload()
       }

      //-->

      1. Hallo wolli,

        sorry an die Ansprache hab ich wirklich nicht gedacht.
        Ich entschuldige mich hiermit offiziell.

        Entschuldigung angenommen, war halt ein Tip meienrseits, damit Du nicht, wie viele andere newbies direkt böse aneckst.

        meine popup Geschichte hat nichts!!! mit Werbung zu tun
        ich arbeite an einem automatischen htaccess Vergabescript.
        auf der Hauptseite sieht man seine ganzen Verzeichnisse
        und wenn man eines davon schützen will drückt man auf einen
        Button und dann soll ein popup aufgehen wo man den User und
        das Passwort angeben kann. nach schließen des Fensters
        muß die Hauptseite automatisch aktualisiert werden, damit man den  Schutz des Verzeichnisses auch angezeigt bekommt.

        Is OK, wir haben hier halt immer wieder auch Leute, die mit sowas dann die Leute mit Werbung zumüllen wollen und ich denke, daß das nicht im allgemeinen Sinn ist.

        Da ich mich in javascript nicht so gut auskenne
        Bitte ich Euch rechtherzlich um Hilfe.

        Bekommst Du hier auch, aber in der From: Hilfe zur Selbsthilfe.

        nette Grüße an alle

        An Dich auch!!

        Hier nochmal mein Script

        <!--
        function CheckOpen() {
        var InfoWin = window.open("http://just-cgi.de", "Zweitfenster", "width=300,height=200");
        while(InfoWin.closed == false) {
        }
        location.href=("http://wild.wlf.de");//oder reload()
        }

        //-->

        Schau mal genau unter: http://selfhtml.teamone.de/javascript/objekte/location.htm#href nach, an Deiner Syntax von "location.href" stimmt was nicht so ganz, vielleicht findest Du es selbst raus.

        Bis denndann

        Michael N.

        1. Hallo Michael,

          Schau mal genau unter: <

          »»http://selfhtml.teamone.de/javascript/objekte/location.htm#href>
          »»nach, an Deiner Syntax von "location.href" stimmt was nicht so

          ganz, vielleicht findest Du es selbst raus.

          Meinst du ich müsste window.location.href benutzen ???
          hat keine Bedeutung

          Auszug von selfhtml

          Erläuterung:
          Methoden des location-Objekts können Sie mit location aufrufen. Sie können auch window. davor notieren. Da es sich dabei aber um die Adresse des aktuellen Fensters handelt, ist die Angabe des Fensternamens nicht zwingend erforderlich

          Aber Michael, es geht doch um die Problematik das in meinem Script
          die whileschleife solange läuft, bis das Fenster geschlossen wird.
          Leider ist Netscape so damit beschäftigt, dass er auf keinen Linkklick im Zweitfenster reagiert.
          IE hat keine Probleme damit.

          Du kannst das mal unter http://gigatrack.de/test/fenster.htm
          testen.

          Hier nochmal mein Script mit erläuterung
          <!--

          <html><head><title>Test</title>
          <script type="text/javascript">

          function CheckOpen()
          {
          //oeffne ein Fenster wenn jemand auf den oeffnen Link klickt
          var InfoWin = window.open("http://just-cgi.de", "Zweitfenster", "width=300,height=200");

          // überpruefe ob das Fenster noch offen ist
          while(InfoWin.closed == false)
          {
          //mach nichts und warte bis das Zweitfenster geschlossen wird
          }
          //wenn Zweitfenster geschlossen wird dann wechsle zur Seite
          location.href=("http://wild.wlf.de");
          }

          </script>
          </head><body>
          <a href="javascript:CheckOpen()">Fenster oeffnen</a>
          </body></html>
          //-->

          1. Hallo wolli,

            Schau mal genau unter: http://selfhtml.teamone.de/javascript/objekte/location.htm#href nach, an Deiner Syntax von "location.href" stimmt was nicht so ganz, vielleicht findest Du es selbst raus.

            Meinst du ich müsste window.location.href benutzen ???
            hat keine Bedeutung

            Schau mal nach den Klammern.

            Auszug von selfhtml

            Aber Michael, es geht doch um die Problematik das in meinem Script
            die whileschleife solange läuft, bis das Fenster geschlossen wird.
            Leider ist Netscape so damit beschäftigt, dass er auf keinen Linkklick im Zweitfenster reagiert.
            IE hat keine Probleme damit.

            Wenn Du mit der Resourcenvergabe ein Problem hast - das hattest Du bei Deiner Frage nicht gesagt -, dann solltest Du eventuell mal prüfen, ob Du die Prüfung, ob das Fenster offen ist in eine eigene Funktion auslagerst, die dann intervallmäßig immer wieder automatisch aufgerufen wird (setTimeout oder setIntervall). So gibst Du dann anderen Netscape-Instanzen Resourcen frei.

            Bis denndann

            Michael N.

  3. Hallo liebe Mithelfer,

    Dank Eurer Hilfe, ist das Problem nun gelöst :-)

    nette Grüße aus Mannheim
    wolli

    hier nun das fertige Script für folgende Problemstellung:
    Von Hauptfenster popup öffnen und wenn popup geschlossen wird,
    automatisch die URL im Hauptfenster wechseln.
    Besonderheit! kein Script im popup

    <!--

    <html><head><title>Test</title>
    <script type="text/javascript">

    function OpenWin()
    {
    //oeffne ein Zweitfenster wenn jemand auf den Link geklickt hat
    InfoWin = window.open("http://gigatrack.de", "Zweitfenster",
    "width=300,height=200");
    CheckOpen()
    }
    function CheckOpen()
    {
    // überpruefe ob das Zweitfenster noch offen ist
    if(InfoWin.closed == false)
    wait();

    //wenn Zweitfenster geschlossen wird dann wechsle zur Seite
    else location.href="http://domainunion.de";
    }
     function wait()
    {
    //warte eine Sekunde bis du wieder checkst ob das Fenster geschlossen wurde
    window.setTimeout("CheckOpen()",1000);
    }
    </script>
    </head><body>
    Aufruf als Link
    <p>
    <a href="javascript:OpenWin()">Fenster oeffnen</a>
    <br>
    </p>
    <p>
    oder Aufruf als Button</p>
    <form method="post" action="javascript:OpenWin()">
    <p><input type="submit" value="Fenster oeffnen" name="B1"></p>
    </form>
    </body></html>
    //-->