kann ein pop up wissen ob es schon pop up ist?
andre5
- javascript
0 Stefan Muenz0 Robert Bamler0 andre5
sicher schon mal gefragt, aber finde es erstmal! und zwar folgendes:
eine html-seite wird über eine suchmaschine aufgerufen. diese seite wird aber normalerweise aus der website in einem pop up-window aufgerufen und hat vordefinierte eigenschaften (grösse, status...) und einen namen.
tönt alles ein wenig kompliziert, ist es aber hoffentlich nicht.
danke, andre
Hallo Andre
- kann die genannte seite nun merken, dass sie noch keinen namen hat und nicht im pop up erschienen ist?
Versuch dazu mal auf der betroffenen Seite in einem JavaScript die Eigenschaft window.name auszulesen ... wenn die Seite als Popup aufgerufen wurde, sollte darin der Name stehen, der bei window.open() vergeben wurde.
- kann die seite das pop up öffnen und darin selbst erscheinen?
Zaubern gilt nicht ;-)
Aber das Popup koennte fuer den Fall, dass es keines ist, folgendes tun:
if(window.name != ".....") /* wenn nicht das Popup mit dem window.open()-Namen */
window.location.href = "xyz.htm"; /* dann im aktuellen Fenster die Hauptseite laden */
wobei xyz.htm jene "Hauptseite" ist, die das Popup normalerweise aufruft.
viele Gruesse
Stefan Muenz
Hallo,
eine html-seite wird über eine suchmaschine aufgerufen. diese seite wird aber normalerweise aus der website in einem pop up-window aufgerufen und hat vordefinierte eigenschaften (grösse, status...) und einen namen.
- kann die genannte seite nun merken, dass sie noch keinen namen hat und nicht im pop up erschienen ist?
ja: mit Javascript mit
if (!opener || opener == null || opener == self) {
tuWas();
}
(AFAIK ist eigentlich nur if(!opener) nötig, aber so ist's sicherer
- kann die seite das pop up öffnen und darin selbst erscheinen?
if (!opener || opener == null || opener == self) {
open("eigenerDateiname.htm","Fenstername","wasweisich");
}
- kann ausserdem in der seite, in der sie zuerst war (zur erinnerung: die seite, die aus der suchmaschine kam), zb die homepage der website geladen werden?
if (!opener || opener == null || opener == self) {
open("eigenerDateiname.htm","Fenstername","wasweisich");
location.href = "homepage.htm";
}
tönt alles ein wenig kompliziert, ist es aber hoffentlich nicht.
Ist eigentlich nicht kompliziert, nur bitte erlaube mir die Bemerkung, dass mich persönlich so etwas verwirren und damit nerven würde. Ich möchte meinen Browser so bedienen, wie ich es für richtig halte und möchte nicht, dass mir Webseiten dieses Privileg "klauen". Ist aber nur meine persönliche Meinung.
Robert
vielen dank für die antwort. ich werde es probieren und habe das gefühl, dass es auch funktionieren wird.
ausserdem ist es auch so, dass ich nicht dem benutzer vorschreiben möchte wie er surfen soll, aber mit einem pop up macht man das sowieso. und wenn ich schon eine galerie (in diesem fall) programmiere, dann auch richtig und so wie ich es möchte.
und wenn es geht, dann ist es nicht böses.
danke nochmals, andre