Reinhard Fößmeier, IT-BeratungJavaScript → PDF-Fenster schließen


PDF schließen im Internet-Explorer

Wenn man in JavaScript ein bestimmtes Browser-Fenster kennt (das kann auch ein Tab sein), kann man es durch die Methode close() schließen, wenn es noch keine Navigationshistorie hat. Das ist zum Beispiel nützlich, wenn man in einem Fenster mit einem bestimmten Namen mehrere Inhalte nacheinander anzeigen will. Die Browser schieben nämlich existierende Fenster nicht in den Vordergrund, wenn sich ihr Inhalt ändert, und der Benutzer bekommt dann den Eindruck, es hätte sich nichts getan. Wenn man aber das Fenster über JavaScript schließt und dann mit demselben Namen wieder öffnet, kommt es in den Vordergrund und wird auf jeden Fall sichtbar. (Natürlich könnte man mit dem Namen _blank jedesmal ein neues Fenster öffnen, aber dann sammeln sich unschön viele Fenster an.)

Nun hat Internet-Explorer hier eine Besonderheit: Wenn das Fenster, das man schließen will, ein PDF-Dokument anzeigt, lässt es sich nicht über close() schließen. Der Aufruf wird einfach ignoriert. Was tun?

Internet-Explorer erlaubt aber, den Inhalt eines PDF-Fensters zu ändern, über die Methode window.open. Man kann nun über diese Methode das leere Dokument about:blank öffnen und – oh Wunder – jetzt lässt sich das Fenster problemlos schließen.