peter: opener.closed

hi,

ich reloade den Inhalt meiner Seite nachdem ich z.B. einen Kommentar über ein PopupFenster hinzugefügt habe.

hierfür nutze ich im Popup-Fenster folgende Function
function close() { opener.top.frames[1].location.reload(); }

Ich habe hier im Forum ein ähnlichen Beitrag (Fensterinstanz) gefunden, doch eure Tips in dem Beitrag haben mir für meine Frage keine Lösung gebracht. z.B. diser Link beschreibt die Möglichkeiten schon sehr gut.

Aber wie man nun prüfen könnte, ob das Hauptfenster noch da ist finde ich nicht??? Mit opener.closed == true gehts nicht mehr, wenn das Fenster weg ist.

Oder - kann man die Reloads auch über das Hauptfenster steuern? Dafür müsste es aber merken wenn ich ein Popup zu machen. Geht glaube nicht oder?

Freundliche Grüsse
Peter

  1. n'abend,

    Aber wie man nun prüfen könnte, ob das Hauptfenster noch da ist finde ich nicht??? Mit opener.closed == true gehts nicht mehr, wenn das Fenster weg ist.

    grundsätzlich kannst du objekte auf existenz prüfen:

    if( typeof(opener) == 'undefined' ) alert('Alter, ich hab meinen Öffner verloren');

    oder

    if( !opener ) alert('Alter, mein Öffner ist auch weg');

    weiterhin schönen abend...

    --
    Freundlich wie man war, hat man mir Großbuchstaben geschenkt.
    sh:( fo:# ch:# rl:° br:> n4:& ie:{ mo:} va:) de:] zu:} fl:{ ss:? ls:[ js:|
    1. hola,

      if( !opener ) alert('Alter, mein Öffner ist auch weg');

      cool, danke!

      weiterhin schönen abend...

      schlaf gut ;)

      hasta luego todos

      1. Sorry das ich nochmal nerven muss, aber es funzt beides nicht

        if( typeof(opener) == 'undefined' ) alert('Alter, ich hab meinen Öffner verloren');

        ->
        Error: The callee (server[not server application]) is not available and disappeared; all connections are invalid. The call did not execute.

        if( !opener ) alert('Alter, mein Öffner ist auch weg');

        -> Error: Permission denied

        was mach ich falsch? (hab deinen code soweit übernommen - soll heissen, Tipfehler mal ausgeschlossen)

        Peter

        1. Nachtrag:

          typeof(opener) ist auch noch 'object' wenn das Fenster zu ist...

          1. n'abend,

            typeof(opener) ist auch noch 'object' wenn das Fenster zu ist...

            na das ist ja mal dämlich.

            bringt if( !opener || !opener.document ) alert('gibts nicht'); mehr?

            weiterhin schönen abend...

            --
            Freundlich wie man war, hat man mir Großbuchstaben geschenkt.
            sh:( fo:# ch:# rl:° br:> n4:& ie:{ mo:} va:) de:] zu:} fl:{ ss:? ls:[ js:|
            1. na das ist ja mal dämlich.

              find ich auch!

              bringt if( !opener || !opener.document ) alert('gibts nicht'); mehr?

              ne..."Access is denied" eigentlich auch klar, wenn schon !opener alleine diesen Fehler brachte.

              Mist verdxxxter ;) Ich will ja nur unschöne RuntimeError vermeiden.

              Hast du eine Idee wie ich das Reloaden hinbekomme und die Fehler unterbinden kann? Ich mein, leider kann ja die Hauptseite selbst nicht merken, wenn das Popup geschlossen wurde, oder? (ausser popup.closed == true, wofür ich ja etwas anstossen müsste)

              Gruss
              Peter

              1. n'abend,

                Hast du eine Idee wie ich das Reloaden hinbekomme und die Fehler unterbinden kann? Ich mein, leider kann ja die Hauptseite selbst nicht merken, wenn das Popup geschlossen wurde, oder? (ausser popup.closed == true, wofür ich ja etwas anstossen müsste)

                Fehlerbehandlung mit dem try..catch-Statement

                weiterhin schönen abend...

                --
                Freundlich wie man war, hat man mir Großbuchstaben geschenkt.
                sh:( fo:# ch:# rl:° br:> n4:& ie:{ mo:} va:) de:] zu:} fl:{ ss:? ls:[ js:|
                1. Danke funzt!

                  Fehlerbehandlung mit dem try..catch-Statement

                  Programmierer müsst man sein - dann hätte man eher an try catch gedacht.

                  Egal, dafür gibbet ja Foren ;)

                  Danke nochmal!

                  Peter