|
FAQ de.comp.lang.javascript |
|
Bitte verwenden Sie als Einstiegsadresse in diese FAQ die
Homepage der Newsgroup de.comp.lang.javascript.
Der Aufenthaltsort dieser Seiten hier kann sich ohne Vorwarnung ändern.
Es soll auf Variablen bzw. Objekte und deren Eigenschaften eines durch window.open()
geöffneten Fensters zugegriffen werden.
Eine Referenz auf das Fenster erhält man mit
neuesFenster = window.open()
Beispiel:
Im Ursprungsfenster wird ein neues Fenster mit dem Namen "neues_Fenster" geöffnet:
neues_Fenster = window.open('neu.html','');
Auszug aus neu.html:
<form> <input type="Text" name="Textfeld" size=10 value="Javascript"> </form name="Ein"> <script language="Javascript" type="text/javascript"> var a = 1000; var b = document.Ein.Textfeld.value; </script>
Zugriff vom Ursprungsfenster aus:
<script language="Javascript" type="text/javascript"> x = neues_Fenster.a; /* Variable a */ y = neues_Fenster.b; /* Variable b */ z = neues_Fenster.document.Ein.Textfeld.value; /* Objekt - Eigenschaft */ </script>
Voraussetzung ist, daß das neue Fenster auch wirklich offen ist, und daß die Variablen und Objekte existieren - gegebenenfalls vor Funktionsaufruf abfragen.
Ab JavaScript 1.1 steht die Eigenschaft opener des Window-Objektes zur Verfügung, die eine Referenz auf öffnende Fenster enthält.
Für das Beispiel (s.1.1.) kann aus neues_Fenster auf eine im Ursprungsfenster definierte Variable Wert und den URL der dort geladenenen Datei (als Bsp. für eine Eigenschaft) mit
neuer_Wert = opener.Wert; /* Variable */ geladen = opener.document.URL; /* Objekt - Eigenschaft */
zugegriffen werden.
Voraussetzung hier: das öffnende Fenster muß noch offen sein.
Die Frame-Struktur eines Fensters ist hierarchisch. Das heißt, auf jede in einem Frame definierte Vatriable und jede(s) Objekt/Eigenschaft kann von jedem Frame dieser Struktur aus zugegriffen werden.
Beispiel-Struktur:
top (=Browserfenster) | var zahl0 = 0; | +--Unter_Frame_1 | | var zahl11 = 11; +---Haupt_Frame----| | var zahl01 = 1;| | +--Unter_Frame_2 | +---Auswahl_Frame
Das Prinzip des Zugriffs veranschaulichen folgende
ausgewählte Beispiele für Zugriffsmöglichkeiten:
| Variablen: | ||
---|---|---|---|
für zahl0: | |||
top.zahl0 | von überall | ||
parent.zahl0 | von Haupt_Frame und Auswahl_Frame | ||
parent.parent.zahl0 | von Unter_Frame_1 und Unter_Frame_2 | ||
für zahl01: | |||
top.Haupt_Frame.zahl01 | von überall | ||
parent.Haupt_Frame.zahl01 | von Auswahl_Frame | ||
parent.zahl01 | von Unter_Frame_1 und Unter_Frame_2 | ||
für zahl11: | |||
top.Haupt_Frame.Unter_Frame_1.zahl11 | von überall | ||
self.Haupt_Frame.Unter_Frame_1.zahl11 | von top | ||
| Objekte, Eigenschaften: | ||
für URL in Auswahl_Frame: | |||
top.Auswahl_Frame.document.URL | von überall | ||
parent.parent.Auswahl_Frame.document.URL | von Unter_Frame_1 und Unter_Frame_2 | ||
für ein Image-Objekt in Unter_Frame_2: | |||
top.Haupt_Frame.Unter_Frame_2.document.images[3].src | von überall |
Anmerkung:
top - immer die oberste Ebene = Browserfenster
parent - immer relativ zum aktuellen Frame (self)
Diese Seite ist Teil der de.comp.lang.javascript FAQ. Die Einstiegsadresse lautet http://www.dcljs.de/.
Dieser Text wurde erstellt von Christine Kühnel (©).
© S. Mintert, Ch. Kühnel
______ letzte Änderung: 21.01.2002 ______
Original-URL dieser Datei: http://dcljs.de/faq/antwort.php?Antwort=fenster_refer30