我在 IE 中遇到了 window.open 这个奇怪的问题。它创建的新窗口的宽度和高度比我指定的要多。
popped_window = window.open('http://localhost/window/window-width.php','_blank','width=800,height=600,scrollbars=no')
上面的代码打开了一个 804px 和 604px (innerWidth, innnerWidth) 的 IE 窗口。外部高度因我选择的功能(地址栏、状态栏等)而异。它很自然,但为什么内部尺寸必须改变 4px。
某处写道,这两个维度上的额外 4px 用于滚动条。如果窗口上的内容添加了滚动条,IE 会确保宽度保持不变。我没有 MSDN 文章来证明这一点,因为我在某个论坛上看到了这一点。
此外,如果打开的新窗口的内容包含此 4px 添加行为,则不会显示。这是真正的麻烦制造者,因为框架集可能会在新窗口上动态出现/消失。
我已经尝试过 window.resizeTo(),但根本没有帮助。我在stackoverflow上找不到任何东西。那么有什么建议吗?