verwaltung von popups
shou
- javascript
0 molily0 shou0 Gino0 Klawischnigg0 Gino
0 Klawischnigg0 molily
Tag,
wenn ich mittels der Funktion window.open("hallo.php", "meinFenster") ein
Fenster öffne, aber das Fenster "meinFenster" schon existiert wird es ja
gerefreshed und erhält einen focus().
Kann ich das refreshen unterdrücken?
Also wenn das Fenster schon geöffnet wurde soll es nicht neu geladen werden
sondern lediglich einen focus bekommen.
Oder gibt es soetwas wie eine funktion "sucheFenster()" ? etwa so:
meinFenster = sucheFenster("meinFenster");
if(meinFenster) meinFenster.focus();
else window.open("hallo.php", "meinFenster");
hoffe ich habs verständlich ausgedrückt
liebe Grüße
shou
Hallo,
wenn ich mittels der Funktion window.open("hallo.php", "meinFenster") ein
Fenster öffne, aber das Fenster "meinFenster" schon existiert wird es ja
gerefreshed und erhält einen focus().
Kann ich das refreshen unterdrücken?
Nein.
Also wenn das Fenster schon geöffnet wurde soll es nicht neu geladen werden
sondern lediglich einen focus bekommen.Oder gibt es soetwas wie eine funktion "sucheFenster()" ?
Nein. Du kannst nicht einfach so aus dem luftleeren Raum abfragen, ob ein Fenster mit einem bestimmten Namen existiert.
Das einzige, was du machen kannst, ist die Referenz auf das neue Fensterobjekt beim Öffnen desselben speichern. Diese Referenz wird von window.open() zurückgegeben. Die speicherst du in einem Objekt unter dem Fensternamen. Dann kannst du später nachschlagen, ob schon ein Fenster mit diesem Namen existiert, und du kannst gleich das Fensterobjekt ansprechen.
var geöffneteFenster = new Object();
function öffneFenster (name, uri) {
if (geöffneteFenster[name]) {
geöffneteFenster[name].focus();
} else {
geöffneteFenster[name] = window.open(uri, name);
}
}
öffneFenster("fenster1", "bla.html"); // Fenster wird geöffnet
öffneFenster("fenster1", "bla.html"); // Jetzt wird nur fokussiert!
Mathias
schöner Lösungsansatz.
Was mache ich aber wenn das Hauptfenster geschlossen und wieder geöffnet wird? Oder der User herumklickt (seiten refresh)
Meine Liste mit meinen Fenstern wird ja dann gelöscht.
Hat hierfür jemand eine Lösung?
schöner Lösungsansatz.
Was mache ich aber wenn das Hauptfenster geschlossen und wieder geöffnet wird? Oder der User herumklickt (seiten refresh)
Meine Liste mit meinen Fenstern wird ja dann gelöscht.
Hat hierfür jemand eine Lösung?
Popups sind doch SCH*. Die nerven nur. Aber du könntest ja deine Popups überprüfen lassen, ob das Parent noch existiert.
Hi there,
Popups sind doch SCH*. Die nerven nur. Aber du könntest ja deine Popups überprüfen lassen, ob das Parent noch existiert.
Popups haben aber kein "parent"...
Hi there,
Popups haben aber kein "parent"...
Dann halt den opener...
Ich wollte damit nur das "Elternelement" beschreiben. Ich weiß - es ist kein Element. Es ist der Opener
Hi there,
Was mache ich aber wenn das Hauptfenster geschlossen und wieder geöffnet wird?
Dann hat es ohnehin irgendeinen Inhalt, zu dem das Javascript des zuvor geschlossenen Fensters keinen Bezug mehr hat. Ein im geöffneten Fenster laufendes Javascript könnte das Schliessen des Hauptfensters mit opener.closed abfragen...
Hallo,
Was mache ich aber wenn das Hauptfenster geschlossen und wieder geöffnet wird?
Dann kommt es nicht umhin, noch einmal window.open() aufzurufen, um wieder Kontakt zum verlorenen Sohn aufzunehmen.
Oder der User herumklickt (seiten refresh)
Fensterreferenzen lassen sich nicht dem folgenden Dokument übergeben. Auch hier kommt man um ein weiteres window.open() nicht umhin.
Du kannst mal probieren, was passiert, wenn du den URI-Parameter von window.open leer lässt. Ändern sich die URI dann im Fenster?
Mathias