arne: onblur() im body-tag zum Fenster schließen

Hallo miteinander,

ich möchte erreichen, dass sich ein Popup-Fenster schließt, sobald man mit der Maus außerhalb des Fensters klickt. Dazu rufe ich im body-tag den Eventhandler onblur() mit einer Funktion auf, welche das Fenster schließt. Das klappt auch. Das Problem ist jetzt, dass sich das Fenster auch schließt, wenn man in den Bereich einer Tabelle oder auf einen Link innerhalb des Popups klickt. Offenbar wird das als Verlassen des body-tags interpretiert.

Wie kann ich nun erreichen, dass das Fenster wirklich nur geschlossen wird, wenn ich außerhalb dieses Fenster klicke?

Vielen Dank!
Arne

  1. Wie hast du das denn ganau gemacht?

    if ( window.blur() ) {kill()} ?

    alex

    1. Wie hast du das denn ganau gemacht?

      if ( window.blur() ) {kill()} ?

      alex

      Nö:

      <body onblur="machzu()">

      und machzu() enthält einfach window.close(). Wie gesagt, das funktioniert, wenn man außerhalb des Popups klickt. Leider auch innerhalb des Popups - z.B. bei Links.

      Grüße
      Arne

  2. hi

    ich möchte erreichen, dass sich ein Popup-Fenster schließt, sobald man mit der Maus außerhalb des Fensters klickt.

    sowas ähnliches hatte ich mal auf eienr Seite für Screenshots oder was das war... als ich dann mal was auf 2 Bildern vergleichen wollte bin ich fast wahnsinnig geworden, lass es lieber - das nervt gigantisch!

    Grüße aus Bleckede

    Kai

  3. Hi Arne,
    hatte ich auch schon mal, und ich kann mich nur alex anschließen, ich habe es dann gelassen. Hab damals ausgiebig mit cheatah diskutiert und probiert, aber keine Lösung gefunden...

    http://forum.de.selfhtml.org/archiv/2002/3/8045/#m44548

    Ein paar Ansätze waren aber drin, vielleicht hilft es Dir und Du kommst drauf. Wenn Du's schaffst - würde mich interessieren!

    Gruß
    Elya

    1. Wenn Du's schaffst - würde mich interessieren!

      Es war, wie immer wenn man eine Weile nachdenkt, ganz einfach:

      function machszu(){
        if(window.location.href != "menue.jsp";){
          window.close();
        }
      }

      Diese Funktion rufe ich dann onBlur() im Body-Tag auf. Halt sicherheitshalber nochmal abfragen, ob es nicht dat eigene Fenster ist - schon kann nichts mehr passieren.

      Grüße
      Arne

      1. das ganze verstehe ich noch nicht so ganz:

        welche Datei ist im PopUp?

        menue.jsp?

        aber wenn die location.href  != menue.jsp

        dann machst du doch nie mit window.close() das Popup wieder zu?

        oder verstehe ich da was falsch?

        Wenn Du's schaffst - würde mich interessieren!

        Es war, wie immer wenn man eine Weile nachdenkt, ganz einfach:

        function machszu(){
          if(window.location.href != "menue.jsp";){
            window.close();
          }
        }

        Diese Funktion rufe ich dann onBlur() im Body-Tag auf. Halt sicherheitshalber nochmal abfragen, ob es nicht dat eigene Fenster ist - schon kann nichts mehr passieren.

        Grüße
        Arne