Olaf: Referenz nach reload auf Popup verloren

Hallo,

Stand der Dinge:
Ich öffne aus einem Fenster f1 mit open() ein neues Fenster.
  var f2 = window.open(url,name, ....)
und erhalte eine Referenz auf das Fenster um es z.B. verschieben, etc

Problem
Nun mach ich einen reload mit F5 auf Fenster f1. Dabei geht die Referenz zu f2 verloren.

Kennt irgendjemand einen Trick, wie ich f2 wieder ansprechen kann??

Olaf
SRC:
<html>
<head>
<title>f1</title>
<script type="text/javascript">
var f2 ;
function openWindow() {
  f2 = window.open("","debug",'top=0,left=0,toolbar=0,location=0,directories=0,status=0,menubar=0,scrollbars=1,resizable=0,width=200,height=200');
}
function moveWindow()
{
  f2.moveBy(200,200);
  f2.focus();
}
</script>
</head>
<body>
<button onclick="openWindow()">open</button>
<button onclick="moveWindow()">move</button>
</body>
</html>

  1. Hi Du,

    alle Objekte werden beim "Unladen" (also Schließen etc.) einer Seite "zerstört".

    Du kannst vielleicht folgendes versuchen:

    Das Ursprungsfenster enthält folgende 2 Handler:

    <body onload="if window.name == 'popupWasOpen' openPopup()" onunload="closePopupIfOpen()">

    Die Funktion openPopup() müsste dann neben dem Öffnen des Popups auch dem window.name den Wert 'popupWasOpen' zuweisen. Beim Schließen des Popups müsste dieses selbst per onunload den opener.window.name auch wieder "löschen" (also belieb. anderen oder leeren Wert setzen).

    Grüße,

    Mirko

  2. Kennt irgendjemand einen Trick, wie ich f2 wieder ansprechen kann??

    Ja, einfach nochmal den open Befehl verwenden.
    f2 = window.open("","debug");

    Wichtig ist, das der Fenstername der gleiche ist.

    Struppi.

    1. Hallo,

      ich bin der Meinung, dass in diesem Fall ein weiteres Popup geöffnet werden würde. Das alte kann damit meines Erachtens nicht wieder referenzierbar gemacht werden.

      Grüße,

      Mirko

      1. ich bin der Meinung, dass in diesem Fall ein weiteres Popup geöffnet werden würde. Das alte kann damit meines Erachtens nicht wieder referenzierbar gemacht werden.

        Da bist du falscher Meinung, wenn der Name gleich ist wird kein neues Popup geöffnet.

        Struppi.

        1. Ok ;)

          ich bin der Meinung, dass in diesem Fall ein weiteres Popup geöffnet werden würde. Das alte kann damit meines Erachtens nicht wieder referenzierbar gemacht werden.

          Da bist du falscher Meinung, wenn der Name gleich ist wird kein neues Popup geöffnet.

          Struppi.