popup bleibt im IE nicht vorne

villemflusser

Grünschnabel
Hallo,

ich habe einen iFrame ("box"), von da aus wird ein Popup ("teacherpop") ausgelöst, in dem nochmal ein frameset ("teacher.php" definiert die Frames "teachmenue" und "teachcontent") liegt. In "teachmenue" ist ein Link (inkl. Variablen), der zum einen über die frameset-Datei "teacher.php" das Popup komplett aktualisiert (mit parent.location.href) und der zum anderen auch den Inhalt im iFrame "box" von dem aus das popup ursprünglich ausgelöst wurde aktualisiert (mit top.opener.location.href).

Ich will nun erzwingen, dass das Popup immer im Vordergrund bleibt, auch wenn man in "box" reinklickt oder scrollt oder so. Was ich bisher habe, klappt mit Mozilla/Firefox/Netscape(7) gut, mit Opera 7 gut genug, mit IE6 überhaupt nicht... IE wirft das Popup sofort in den Hintergrund, wenn man in den iFrame klickt.

Ich habe es an diversen Stellen mit einem simplen self.focus(); versucht (in teacher.php, in "teachmenue"), auch kombiniert mit verschiedenen onBlur - Varianten an diversen Stellen - das scheint für Firefox etc. auszureichen, aber eben nicht für IE. Meine nächste Idee war, es mit onClick in "box" zu versuchen, eigentlich das naheliegenste: wenn das passiert, was das Popup in den Hintergrund wirft (klick in box), dann hole "teacherpop" nach vorne.
Das Problem hierbei scheint nun zu sein, dass ja der Inhalt von box aktualisiert wurde und deshalb der Zeiger auf "teacherpop" weg ist. Habe versucht, den Zeiger neu zu setzen (mit erneutem window.open) und dann focus zu setzen, aber es geht einfach nicht (im IE). Wie rufe ich von aktualisiertem "box" aus das popup "reacherpop" auf? Habe in box folgendes stehen:

function blockKlick() {
teacherpop = window.open('','teacherpop','');
box.teacherpop.focus();
}

mit <body onClick ="javascript:blockKlick()">

...und wie gesagt in teacherpop:

function popivorn()
{
self.focus();
window.setTimeout(\"popivorn()\",100);
}
mit <body onLoad="popivorn()>

Habe auch schon mal getestet, statt box.teacherpop.focus(); einfach self.blur() zu machen, aber darauf fährt ausgerechnet der IE dann so richtig scharf ab: er schmeißt "box" dann in den hintersten Hintergrund der zu kriegen ist, und das popup "teacherpop" steht einsam und verlassen vor irgendwelchen anderen Prozessen, die man ja vielleicht auch noch offen hat...

Das ist meine Premiere im Hilfesuchen per Forum, habe Stunden mit diesem Zeug hier (und mit google) verbracht und bin nicht weitergekommen...
 
Rein vom Prinzip her reicht
Code:
<script type="text/javascript">
<!--
window.setInterval('self.focus()',1000);
//-->
</script>
...in dem Fenster, welches vorne bleiben soll aus(sofern der Benutzer in seinem Browser solche Aktionen nicht deaktiviert hat).

Woran es bei dir genau hapert, kann ich nicht sagen, da ich mir auch nach 5maligem Lesen deines Beitrages kein rechtes Bild von dem machen kann, was da auf deinem Bildschirm umherschwirrt.
 
Oh Mann, ich fass` es nicht (aber ich danke Dir!).

Hatte mich anscheinend in zuvielen Ansätzen verheddert, die sich dann gegenseitig in die Quere kamen (...und diese Verhedderung spiegelte sich wohl auchin meinem Posting wieder :-( ) .
Habe alle meine Teile rausgeschmissen, Deinen süßen kleinen Schnipsel ins Popup gesetzt und -- FERTIG !
 
ich mach das so:
<body onload="self.focus();" onblur="self.focus();">

so drängelt sich das popup immer wieder nach vorne durch, hihi.
mach das aber nicht mit mehr als einem popup, sonst fangen die dinger an sich zu streiten ;)
 
Hallo Yayoko,

das mit dem:
<body onload="self.focus();" onblur="self.focus();">

klappt beim IE wohl ganz gut, aber bei Firefox habe ich folgendes Problem:

Beim ersten Klick auf ein anderes Fenster klappt es noch, aber beim zweiten Klick verschwindet das Fenster was vorne bleiben soll im Hintergrund!

Woran kann das wohl liegen? :confused:

Gruß Rudi
 
vielleicht an den FF-Einstellungen.
Dort kann man festlegen, ob solche Sachen erlaubt sind:


Extras>
Einstellungen>
Web-Features>
Javascript>
Erweitert>
Fenster vor oder hinter andere Fenster legen
 
bei den Einstellungen hab ich alle Skripts zugelassen.
Beim ersten Klick funktioniert es ja noch, aber beim Zweiten nicht mehr....
 

Neue Beiträge

Zurück