Martin: opener

Hallo,
ich habe folgendes Problem:
Die beiden folgenden Zeilen sind in einem Perlscript eingebunden, welches eine Seite in einem durch open() erzeugtem Fenster ausgibt.

1: print "<a href='javascript:alert(opener.name);'>Opener</a>";
2: print "<a href='javascript:alert(self.name);'>HIER</a>";

Wenn ich nun auf den Link HIER klick erscheint ein Fenster in dem der Name es zusätzlich geöffneten Fensters steht. So wie gewünscht.

Klicke ich aber auf den Link Opener erhalte ich in der Javakonsole von Netscape 6.2 die Fehlermeldung: Permission denied to get property Window.name
Der IE6 versucht das ganze zu debuggen. (Gleicher Fehler).

Wäre nett, wenn mir da jemand weiterhelfen könnte.

  1. Moin!

    1: print "<a href='javascript:alert(opener.name);'>Opener</a>";
    2: print "<a href='javascript:alert(self.name);'>HIER</a>";

    Klicke ich aber auf den Link Opener erhalte ich in der Javakonsole von Netscape 6.2 die Fehlermeldung: Permission denied to get property Window.name
    Der IE6 versucht das ganze zu debuggen. (Gleicher Fehler).

    Es sieht so aus, als ob das opener-Fenster von einer anderen Domain kommt als das, worin sich der Link befindet.

    Das ist ein Sicherheitsmechanismus, den du nicht umgehen kannst. Kommen alle Seiten von der gleichen Domain, hast du dieses Problem nicht.

    - Sven Rautenberg

    1. Danke für den Tip! Das könnte der Grund sein, da das Perlscript auf einer anderen Domain liegt. Ich versuche es zu ändern, und gebe später noch mal Auskunft, ob es funktioniert.

      1. Hi,

        das ist sicher der Grund. Als weitere Fehlerquelle bleibt eigentlich nur noch, daß document.close() vergessen wurde.