5keeve: existenz eines fensters überprüfen

Im Januar frage Julian:

Die folgende Nachricht zum Thema stammt von: Julian,  mail@julian-finn.de,

Hi,

kann ich irgendwie rausfinden ob ein fenster xy existiert?
if (fenstername) mag anscheinend nicht...

Ich habe mir heute so beholfen - vielleicht kann mir ja jemand was zur Kompatibilität sagen?

var zielurl='http://wohin.wirklich.dn/';
var name='MeinFensterName';
var mywin= window.open('', name);
if (mywin.open) {
 if (mywin.location.protocol.substr(0,4)!='http') {
  mywin.location= zielurl;
 }
 else {
  mywin.focus();
  mywin.alert("You are still connected to\n"
   mywin.location.host+'!');
 }
}
else {
 window.open(zielurl, name);
}

Die leere URL bewirkt, daß ich von einem eventuell bestehenden Fenster die referenz(?) erhalte. Wenn es noch nicht existiert bekomme ich ein leeres neues Fenster. In Mozilla ist die URL dann "about:blank". In jedem Fall nichts, das mit http beginnt.

  1. Hallo,

    Ich habe mir heute so beholfen - vielleicht kann mir ja jemand was zur Kompatibilität sagen?

    [...]
    if (mywin.open)
    [...]

    Es gibt keine Fenstereigenschaft "open". Stattdessen gibt es genau die gegenteilige Eigenschaft "closed". Obiges Codestück müsste also

    if (!mywin.closed)

    lauten.

    Nachzulesen auf http://de.selfhtml.org/javascript/objekte/window.htm#closed.

    Gruß
    Arx

    --
    ss:| zu:| ls:& fo:) de:] va:} ch:? n4:{ rl:? br:& js:| ie:% fl:| mo:}