Tobias Sauer: PopUp-Fenster automatisch schließen, wenn es weg geklickt wird

Hallo, wie kann man ein PopUp-Fenster automatisch schließen, wenn man wieder auf die Mutterseite klickt.

Funktion zum öffnen des Fensters:

<!--
function popup()
{
 window.open "popup.htm","newer_win","width=480,height=480,location=0,menubar=0,resizable=0,scrollbars=0,status=0,titlebar=1,toolbar=0").focus();
}
//-->

Aufruf der Funktion durch Hyperlink:

<a target="_self" href="javascript: popup()">

  1. Moin Moin !

    onblur -- aber ob das für das ganze window gilt, weiß nur SelfHTML.

    Alexander

    --
    Nein, ich beantworte keine Fragen per eMail. Dafür ist das Forum da.
    Today I will gladly share my knowledge and experience, for there are no sweeter words than "I told you so!"
    Mein "Lieblings-Forums-Bug": http://cforum.teamone.de/phpbt/bug.php?op=show&bugid=103&pos=2
    1. ob das für das ganze window gilt, weiß nur SelfHTML.

      Einfach göttlich: Self-Guru-Html weiss wirklich alles und jedes.
      Wir verehren dich, du göttliches Self.

      1. Moin Moin !

        ob das für das ganze window gilt, weiß nur SelfHTML.

        Einfach göttlich: Self-Guru-Html weiss wirklich alles und jedes.
        Wir verehren dich, du göttliches Self.

        *ROTFL*

        Ich wollte Tobias doch nur ein RTFM ersparen! Klar hätte man es auch wohl beim W3C nachlesen können, nach einigen Umgrabaktionen, die uns ein gewisser Stefan Münz erspart hat.

        Alexander

        --
        Nein, ich beantworte keine Fragen per eMail. Dafür ist das Forum da.
        Today I will gladly share my knowledge and experience, for there are no sweeter words than "I told you so!"
        Mein "Lieblings-Forums-Bug": http://cforum.teamone.de/phpbt/bug.php?op=show&bugid=103&pos=2
    2. hi,

      onblur -- aber ob das für das ganze window gilt, weiß nur SelfHTML.

      vorsicht, teste mal was passiert, wenn das Popup Forms enthaelt. Bei einigen Browsern feuert window.onblur bei Klick in ein Input - selbst in selbigem Fenster. Besser also der andere Weg: Die Seite, die das Fenster oeffnet, sollte es onfocus schliessen - so wie Struppi gepostet hat. Ich denke nur, man sollte F1 anschliessend wieder nullen...

      Gruesse  Joachim

      1. hi,

        onblur -- aber ob das für das ganze window gilt, weiß nur SelfHTML.

        vorsicht, teste mal was passiert, wenn das Popup Forms enthaelt. Bei einigen Browsern feuert window.onblur bei Klick in ein Input - selbst in selbigem Fenster. Besser also der andere Weg: Die Seite, die das Fenster oeffnet, sollte es onfocus schliessen - so wie Struppi gepostet hat. Ich denke nur, man sollte F1 anschliessend wieder nullen...

        Absolut. Das war als Lösungunsansatz gedacht, ich hatte es noch nicht mal ausprobiert (sind auch Fehler drin).

        Also hier mal das komplette Skript:
        var F1 = null;
        function popup(url, target)
        {
        F1 = window.open(url, target, "width=480,height=480,location=0,menubar=0,resizable=0,scrollbars=0,status=0,titlebar=1,toolbar=0")
        F1.focus();
        window.onfocus = function ()
        {
          if(!F1) return;
          F1.close();
          F1 = null;
          window.onfocus = null;
        };
        }

        und der Link:

        <a target="newerWin" href="about:blank"
        onclick="popup(this.href, this.target);return false;">
        link</A>
        </body>
        </html>

        Struppi.

  2. Hallo, wie kann man ein PopUp-Fenster automatisch schließen, wenn man wieder auf die Mutterseite klickt.

    Funktion zum öffnen des Fensters:

    <!--
    function popup()
    {
    window.open "popup.htm","newer_win","width=480,height=480,location=0,menubar=0,resizable=0,scrollbars=0,status=0,titlebar=1,toolbar=0").focus();
    }
    //-->

    Aufruf der Funktion durch Hyperlink:

    <a target="_self" href="javascript:"popup()">

    *Argl*
    <a target="newerWin" href="popup.htm"
    onclick="popup(this.href, this.target);return false;">

    var F1 = null;
    function popup(url, target
    {
       F1 = window.open url, target, "width=480,height=480,location=0,menubar=0,resizable=0,scrollbars=0,status=0,titlebar=1,toolbar=0").focus();

    window.onfocus = function () { if(F1) F1.close();};
    }

    Struppi.