Steffen: Problem mit window.opener im IE

Hallo,

ich bin auf der Suche nach einer Möglichkeit überprüfen zu können, ob ein Fenster per Javascript von einem anderen Fenster aus geöffnet wurde.

Grundsätzlich kann man das ja mit der Überprüfung des window.opener-Objektes machen - leider ist das im IE nicht wirklich gut implementiert, sodass selbst bei einem normalen HTML-Link mit einem target="_blank" das Objekt existiert.

Gibt es evtl. in Javascript eine Möglichkeit zu schauen, mit welchem "target" das neue Fenster geöffnet wurde, wenn schon die die Überprüfung des opener-Objektes und sogar des Referers im IE nicht wirklich sichere Methoden sind?

Viele Grüße,
Steffen

  1. Hallo Steffen.

    ich bin auf der Suche nach einer Möglichkeit überprüfen zu können, ob ein Fenster per Javascript von einem anderen Fenster aus geöffnet wurde.

    Grundsätzlich kann man das ja mit der Überprüfung des window.opener-Objektes machen - leider ist das im IE nicht wirklich gut implementiert, sodass selbst bei einem normalen HTML-Link mit einem target="_blank" das Objekt existiert.

    Du könntest „window.opener.location.href“ mit „location.href“ vergleichen …

    Einen schönen Freitag noch.

    Gruß, Mathias

    --
    ie:% fl:| br:< va:) ls:& fo:) rl:( n4:~ ss:) de:] js:| mo:| zu:)
    debian/rules
    1. Hello,

      Du könntest „window.opener.location.href“ mit „location.href“ vergleichen …

      zumindest sofern das PopUp und die aufrufende Seite der same-origin-policy entsprechen.

      MfG
      Rouven

      --
      -------------------
      Buy when there's blood running in the street and sell when everyone is pounding at your door, clawing to own your equities  --  Wisdom on Wallstreet
    2. Hallo Mathias,

      erstmal vielen Dank für das prompte Interesse.

      Hallo Steffen.

      Du könntest „window.opener.location.href“ mit „location.href“ vergleichen …

      Was bewirkt das genau?

      Die Inhalte in den Fenstern können durchaus von verscheidenen Domains kommen. Wie Rouven anmerkt, gibts da eine Exception.

      Hintergrund der ganzen Geschichte ist der - ich möchte verhindern, dass eine beliebig Seite eine meiner Seiten in einem referenzierbaren Fenster öffnet. Dafür checke ich ob es ein opener-Objekt gibt und zusätzlich den Referer (Whitelist).

      Ärgerlicherweise wird unter Umständen kein Referer übergeben, und der IE initialisiert ein opener-Objekt, wenn man ein Fenster per href/target "_blank" öffnet. Daher sind zumindest für den IE meine Maßnahmen bisher sinnlos :-/

      Einen schönen Freitag noch.

      Gruß, Mathias

      Dir auch - und ein schönes WE

      Gruß,
      Steffen

      1. Hallo Steffen.

        Du könntest „window.opener.location.href“ mit „location.href“ vergleichen …

        Was bewirkt das genau?

        Die Inhalte in den Fenstern können durchaus von verscheidenen Domains kommen. Wie Rouven anmerkt, gibts da eine Exception.

        Ich ging davon aus, dass sowohl öffnendes als auch geöffnetes Dokument zur selben Domain gehören.

        Hintergrund der ganzen Geschichte ist der - ich möchte verhindern, dass eine beliebig Seite eine meiner Seiten in einem referenzierbaren Fenster öffnet. Dafür checke ich ob es ein opener-Objekt gibt und zusätzlich den Referer (Whitelist).

        Dagegen wirst du wohl nichts unternehmen können

        Einen schönen Freitag noch.

        Dir auch - und ein schönes WE

        Dankeschön.

        Gruß, Mathias

        --
        ie:% fl:| br:< va:) ls:& fo:) rl:( n4:~ ss:) de:] js:| mo:| zu:)
        debian/rules
      2. hi,

        ich möchte verhindern, dass eine beliebig Seite eine meiner Seiten in einem referenzierbaren Fenster öffnet.

        Warum?

        gruß,
        wahsaga

        --
        /voodoo.css:
        #GeorgeWBush { position:absolute; bottom:-6ft; }
        1. Hallo,

          hi,

          ich möchte verhindern, dass eine beliebig Seite eine meiner Seiten in einem referenzierbaren Fenster öffnet.

          Warum?

          Weil meine Seite u.U. mit Javascript angreifbar ist und ich das gerne verhindern möchte?

          gruß,
          wahsaga

          Gruß,
          Steffen

          1. Hallo Steffen.

            ich möchte verhindern, dass eine beliebig Seite eine meiner Seiten in einem referenzierbaren Fenster öffnet.

            Warum?

            Weil meine Seite u.U. mit Javascript angreifbar ist und ich das gerne verhindern möchte?

            Inwiefern soll sie angreifbar sein? Die Same Origin Policy trifft auf jeden zu.

            Einen schönen Freitag noch.

            Gruß, Mathias

            --
            ie:% fl:| br:< va:) ls:& fo:) rl:( n4:~ ss:) de:] js:| mo:| zu:)
            debian/rules
            1. Hallo Mathias!

              Inwiefern soll sie angreifbar sein? Die Same Origin Policy trifft auf jeden zu.

              Versucht Steffen evtl. zu erreichen, dass seine Seite nicht in fremden Framesets »eingesperrt« wird?

              Viele Grüße aus Frankfurt/Main,
              Patrick

              --

              _ - jenseits vom delirium - _
              [link:hatehtehpehdoppelpunktslashslashwehwehwehpunktatomicminuseggspunktcomslash]
              Nichts ist unmöglich? Doch!
              Heute schon gegökt?
              1. Hallo Patrick.

                Inwiefern soll sie angreifbar sein? Die Same Origin Policy trifft auf jeden zu.

                Versucht Steffen evtl. zu erreichen, dass seine Seite nicht in fremden Framesets »eingesperrt« wird?

                Dies ließe sich http://de.selfhtml.org/javascript/beispiele/seitenanzeige.htm@title=bekanntermaßen ja erreichen. Doch er sprach von Popups, wo dies nicht möglich ist.

                Einen schönen Freitag noch.

                Gruß, Mathias

                --
                ie:% fl:| br:< va:) ls:& fo:) rl:( n4:~ ss:) de:] js:| mo:| zu:)
                debian/rules