Hallo Jürgen,
ich hatte vor ca. 1,5 Jahren ein Script in meine Seite eingebaut das von einem popup Fenster nach 5 Sekunden auf eine andere Seite (neue Seite) weitergeleitet wird und das popup zugleich wieder schließt.
Hmm ja, sollte gehen, aber ...
Hier mal das Script:
... nicht mit diesem Scriptfetzen, das diverse Fehler enthält.
<script LANGUAGE="JavaScript">
Bitte lieber
<script type="text/javascript">
function reload()
{
window.open("http://www.blablabla.de")
Nette Browser erkennen Deine Absicht und öffnen ein neues Fenster, das was Du ein Popup nennst. window.open erwartet allerdings mindestens zwei Parameter. Den zweiten, den Fensternamen, läßt Du diskreterweise weg.
window.close()
Damit wird nicht das Popup geschlossen. Damit weist Du den Browser an, sich selbst zu schließen, das stößt möglicherweise auf Schwierigkeiten, wie Du im entsprechenden SELFHTML-Abschnitt, window.close() nachlesen kannst.
Insbesondere im Zeitalter von Tabbed Browsing ist das Schließen des Originalbrowserfensters eine schlechte Idee. Der Benutzer hat möglicherweise mehrere Seiten darin geöffnet und möchte nicht wegen Deiner Seite diese alle schließen.
}
setTimeout("reload();", 5000); //3 sek = 3000 millisek
Doch siehe da. Mit IE7 wird vom popup nicht mehr weitergeleitet.
Der Popupblocker des IE7 hat mit dem Öffnen der Zielseite nach 5 Sekunden keine Probleme, er erkennt, dass unaufgefordert ein Popup geöffnet werden soll - und erläutert dies in der entsprechenden Informationsleiste. Wenn Du dem Öffnen zustimmst, dann wird auch das Popup geöffnet.
Dazu fragt der IE7 - wie es sich gehört - nach, ob das Browserfenster geschlosssen werden kann und befolgt auch hier artig Deine Entscheidung.
Insgesamt erscheint mir Dein Konzept verbesserungswürdig. Dein Problem ist nicht das Verhalten des IE, sondern Dein Grundkonzept. Wunderbare Informationen zu diesem Thema kannst Du bei molily nachlesen: "Popups" mit Javascript.
Freundliche Grüße
Vinzenz