Wurde Seite in Popup oder normalem Browserfenster geladen?
tschroeder
- javascript
0 Rouven0 Cybaer
0 Cybaer0 Ingo Turski
Hallo,
wie kann ich innerhalb einer ASP/HTML-Datei - ich nenne sie mal x - mit JavaScript prüfen, ob sich die Seite in einem Popup befindet?
"Popup" soll heißen: Fenster wurde mit Standard-JavaScript "window.open(...)" geöffnet.
Hintergrund: Ich möchte in der Datei an einer bestimmten Stelle den JavaScript-Befehl "window.close()" ausführen, aber nur, wenn sich die Seite in einem Popup befindet.
Ich habe schon überlegt: ein Popup hat immer einen "Opener" (das Ursprungsfenster), den ich mit "window.opener" ansteuern kann.
Könnte allerdings sein, dass es den "Opener" gar nicht mehr gibt, weil er bereits vom Anwender geschlossen wurde.
Die Prüfung "if(window.opener)" bringt mich also nicht wirklich weiter.
Hat jemand einen Tipp?
Tricksen kann man warscheinlich viel.
Beispiel: Beim Öffnen des Fensters eine "Marke" setzen und dann innerhalb des Fensters einfach weitergeben (zum Beispiel an die Datei x).
Mich würde aber interessieren, ob JavaScript eine Standardfunktion oder -eigenschaft bietet, auf die man zugreifen kann.
Hinweis: Falls jetzt wieder irgendwelche ... Kommentare kommen, in der Art: "Mach' doch keine Popups, die nerven nur den Anwender, blabla etc. etc."
Es handelt sich um eine ziemlich komplexe Intranet-Anwendung (Business-Software), ohne die Popups geht es leider nicht und nerven tun sie auch keinen.
Freue mich über jede Idee.
Gruß aus dem verregneten Ditzingen
Tommy
Hello,
Die Prüfung "if(window.opener)" bringt mich also nicht wirklich weiter.
tut sie nicht? Ich hab's nicht vor Augen, aber bleibt der opener nicht trotzdem gesetzt aber seine closed-Eigenschaft ist ebenfalls gesetzt?
MfG
Rouven
Hi,
tut sie nicht? Ich hab's nicht vor Augen, aber bleibt der opener nicht trotzdem gesetzt aber seine closed-Eigenschaft ist ebenfalls gesetzt?
Ist eh irrelevant, da der opener auch in einem normalen Browserfenster gesetzt sein kann.
Gruß, Cybaer
Hi,
Hintergrund: Ich möchte in der Datei an einer bestimmten Stelle den JavaScript-Befehl "window.close()" ausführen, aber nur, wenn sich die Seite in einem Popup befindet.
Dann gib dem Popupfenster doch einen Namen, und frag den Namen ab?!
Gruß, Cybaer
Hi,
ein Popup hat üblicherweise einen Fensternamen, den Du abfragen kannst.
freundliche Grüße
Ingo