opener auf Existenz überprüfen
Martin
- javascript
Ich habe über den Befehl window.open() ein neues Fenster geöffnet. Klickt man in dieses, öffnet sich im Mutterfenster die entsprechende Datei und das kleine Fenster schließt sich wieder. Dumm nur wenn das Mutterfenster schon geschlossen ist.
Gibt es eine Möglichkeit dies zu überprüfen und im Fall dass es schon geschlossen ist ein neues Browserfenster zu öffnen?
Gruß
Martin
Moin!
Gibt es eine Möglichkeit dies zu überprüfen und im Fall dass es schon geschlossen ist ein neues Browserfenster zu öffnen?
Jedes window hat eine Eigenschaft .closed. Also
if (opener.closed) {
// schon wech, neu aufmachen
}
Hab aber mal gehoert, das manche IEs da ein bisschen rumspinnen.
So long
hi,
Hab aber mal gehoert, das manche IEs da ein bisschen rumspinnen.
spinnen tut er (ie4/5) hier leider gruendlich. Im ie gehts nur, wenn man den error abfaengt. Hier eine komplette Funktion, um urls in opener zu laden, neufenster ist das popup (<insider>credits to Lummerland</insider>):
function opUrl(page) {
onerror = function(){
alert("ups, leider haben Sie das andere Browserfenster schon geschlossen");
return true;
}
if(opener && !opener.closed && opener.neufenster) {
opener.top.content.location.href = page;
self.close();
}
else alert("ups, leider haben Sie das andere Browserfenster schon geschlossen");
onerror = function(){
return false;
}
}
hth
Guesse Joachim