Neue Internet Explorer-Fenster berücksichtigen bei Verwendung des Skripts nicht den Zoomfaktor zurücksetzen
Wichtig
Die Internet Explorer 11-Desktopanwendung wird für bestimmte Versionen von Windows 10 eingestellt und ab dem 15. Juni 2022 nicht mehr unterstützt.
Sie können mit dem Internet Explorer-Modus in Microsoft Edge weiterhin auf ältere Websites zugreifen, für die Internet Explorer erforderlich ist. Anleitung.
Die Internet Explorer 11-Desktopanwendung wird schrittweise an den schnelleren, sichereren Microsoft Edge-Browser umgeleitet und letztendlich über Windows Update deaktiviert werden. Deaktivieren von IE heute.
Dieser Artikel enthält Informationen zum Beheben des Problems, dass neue Fenster, die mithilfe eines Skripts erstellt werden, den Zoomfaktor "Zurücksetzen" für neue Fenster und Registerkarten in Internet Explorer 9 und neueren Versionen nicht berücksichtigen.
Ursprüngliche Produktversion: Internet Explorer 9 und höhere Versionen
Ursprüngliche KB-Nummer: 2741211
Problembeschreibung
Stellen Sie sich folgendes Szenario vor: Sie verwenden Internet Explorer 9 oder eine neuere Version, um zu einer Seite zu navigieren, die einen anderen Zoomfaktor als 100 % aufweist. Diese Seite enthält eine Schaltfläche, mit der ein neues Fenster mit bestimmten Dimensionen mithilfe des Skripts geöffnet wird. Sie haben die Option "Zoom zurücksetzen" für neue Fenster und Registerkarten unter der Registerkarte "Erweitert" der Internet Explorer-Internetoptionen festgelegt. Wenn Sie auf die Schaltfläche klicken, wird das neue Fenster mit dem gleichen Zoomfaktor wie das übergeordnete Fenster geöffnet. Dies kann zu unerwartetem Verhalten im untergeordneten Fenster führen, in dem Teile des untergeordneten Fensters nicht sichtbar sind.
Ursache
In Internet Explorer 9 und neueren Versionen wurden Mithilfe der API erstellte Fenster window.open (sowie und ) so konzipiert, dass showMod[al:eless]Dialog der createPopup Zoomfaktor "Zurücksetzen" für neue Fenster und Registerkarten nicht berücksichtigt wird und immer der Zoomfaktor von der übergeordneten Seite geerbt wird.
Lösung
Die neuen Fensterabmessungen und die Abmessungen der darin enthaltenen Objekte können entsprechend dem geerbten Zoomfaktor skaliert werden. Die relevanten Formeln sind:
Der tatsächliche Zoomfaktor kann wie folgt berechnet werden:
var zoomLevel = window.screen.deviceXDPI / window.screen.logicalXDPI;Zum Gegenstufen eines Elements lautet die Formel wie folgt:
var objectWidth = desiredUnscaledWidth / zoomLevel;var objectWidth = desiredUnscaledWidth / zoomLevel;