Zwischen zwei Fenstern hin- und herwechseln - wie?
Kalle_B
- javascript
Hallöle,
ich habe eine Liste mit Adressen, bei Klick auf eine davon wird ein neues Fenster aufgemacht zur Adresspflege:
<a href='...' target='p102'>
Im Fenster p102 kann man nun ändern. Wenn danach zurück in die Übersicht gewechselt wird zur Bearbeitung der nächsten Adresse, wird das Fenster p102 wiederverwendet, aber
<body onLoad="self.focus()">
wirkt nicht, das Fenster bleibt im Hintergrund. Problem aber gelöst mit einem Javascript- Kommando ganz am Ende der Seite:
self.focus();
Also, das HIN klappt nun beliebig oft.
Nun wäre es pfiffig, im Fenster p102 einen Link zurück auf die Liste zu haben. Ist das das parent.window?
Leider funktioniert dieser Link in p102 nicht:
<p onClick='parent.window.focus()'>XXX</p>
Wie geht's ?
Lieben Gruß, Kalle
Leider funktioniert dieser Link in p102 nicht:
<p onClick='parent.window.focus()'>XXX</p>
aber dieser:
<p onClick='opener.focus()'>XXX</p>
Danke für's Mitdenken.
Kalle
Da das Hin- und Herswitchen in der Hirarchie gut funktioniert, würde mich interessieren, ob ich per Javascript auch Zugriff zu anderen Fenstern haben kann.
Also Beispiel:
Aus einer Liste p101 heraus kann ich pro Adresse verschiedene Fenster öffnen
dann wäre es schon pfiffig, von p102 aus das Fenster p103 fokussieren zu können, ohne über den opener zu gehen.
Aber so etwas funktioniert nicht, obwohl window.name = p102 besteht:
<p onClick='window.p102.focus()'>window.p102.focus()</p>
Opera meldet:
name: TypeError
message: Statement on line 1: Cannot convert undefined or null to Object
Backtrace:
Line 1 of function script
window.p102.focus()
...
stacktrace: n/a; see 'opera:config#UserPrefs|Exceptions Have Stacktrace'
Kalle
Da das Hin- und Herswitchen in der Hirarchie gut funktioniert, würde mich interessieren, ob ich per Javascript auch Zugriff zu anderen Fenstern haben kann.
Nein.
Es gibt einen workaround den du aber mit eine wenig suche finden solltest, da diese Frage relativ häufig hier auftaucht.
Struppi.
Es gibt einen workaround den du aber mit eine wenig suche finden solltest, da diese Frage relativ häufig hier auftaucht.
Habe mir nun einiges angeschaut, es geht aber immer um die hirarchische Beziehung
window.open() <==> opener
Ich suche den Javascript-Zugriff auf ein beliebiges Fenster, wenn mehrere Fenster derselben Domain geöffnet sind. Unabhängig davon, wie es geöffnet wurde.
Ein Fenster könnte sich ja selbst einen Namen geben window.name=...
Nehmen wir an, ich mache mehrere Fenster in Opera auf und tippe die URL jeweils ein (wichtig: Dieselbe Domain, sonst Sicherheitssperre des Browsers):
www.test.de/abc.htm window.name='abc';
www.test.de/def.htm window.name='def';
www.test.de/ghi.htm window.name='ghi';
Wie kann ich nun vom window abc das window ghi fukussieren?
LG, Kalle
Hallo,
Nehmen wir an, ich mache mehrere Fenster in Opera auf und tippe die URL jeweils ein (wichtig: Dieselbe Domain, sonst Sicherheitssperre des Browsers):
www.test.de/abc.htm window.name='abc';
www.test.de/def.htm window.name='def';
www.test.de/ghi.htm window.name='ghi';Wie kann ich nun vom window abc das window ghi fukussieren?
indem du "pro forma" mit window.open() versuchst, ein Fenster mit dem gewünschten Namen zu öffnen. Da es schon existiert, wird in Wirklichkeit kein neues geöffnet, sondern du bekommst nur eine frische Referenz auf das schon existierende Fenster. Damit kannst du nun nach Herzenslust hantieren.
So long,
Martin
Moin!
indem du "pro forma" mit window.open() versuchst, ein Fenster mit dem gewünschten Namen zu öffnen. Da es schon existiert, wird in Wirklichkeit kein neues geöffnet, sondern du bekommst nur eine frische Referenz auf das schon existierende Fenster. Damit kannst du nun nach Herzenslust hantieren.
Es gibt zum Thema "Fensterzugriff" in Javascript ja auch sowas wie Artikel bei SELFHTML.
http://aktuell.de.selfhtml.org/artikel/javascript/fensterzugriff/
- Sven Rautenberg
... das funzt.
indem du "pro forma" mit window.open() versuchst, ein Fenster mit dem gewünschten Namen zu öffnen. Da es schon existiert, wird in Wirklichkeit kein neues geöffnet, sondern du bekommst nur eine frische Referenz auf das schon existierende Fenster. Damit kannst du nun nach Herzenslust hantieren.
Kalle