【发布时间】:2015-07-01 23:41:02
【问题描述】:
我在 IE11 中使用兼容模式。我正在使用下面的代码来设置兼容模式:
<meta http-equiv="x-ua-compatible" content="IE=8">
现在,当我运行我的网页时,某些功能会中断。将用户代理字符串设置为“Internet Explorer 8”后一切正常。这意味着用户代理字符串未在兼容模式下正确设置。
现在的问题是如何强制我的代码使用 IE8 用户代理字符串。我将调试点放在代码中并检查了navigator.useragent 属性,它显示了 IE8 用户代理字符串,但在 Fiddler 中它显示了 IE11 用户代理字符串。
我很困惑为什么它不在兼容模式下使用 IE8 UA。我正在修改代码以使其与 IE11 兼容,但这可能需要一些时间。因此发现使用x-ua-compatible 可能是快速解决方案。请指教。
提前致谢。
【问题讨论】:
-
你的代码的哪一部分被破坏了?你能分享一些吗
-
有一个 url 可以从服务器启动一些应用程序。如果我传递 IE8 用户代理字符串,那么它工作正常。这些应用程序会下载一些 dll。我无权访问它们。我们可以动态设置用户代理字符串吗?如果我使用的是兼容模式 IE8,那么应该通过哪个用户代理字符串 IE11?
-
是否需要为兼容模式添加任何额外的标签?
-
兼容模式改变了文档模式,例如用于呈现页面的模式。它不会影响用户代理字符串。如果您要更改用户代理字符串,则需要查看企业模式。要了解更多信息,请参阅blogs.msdn.com/b/ie/archive/2015/04/23/…
-
感谢兰斯的回复。我在 USer 代理字符串方面有点困惑,在代码中如果显示 navigator.useragent 则它显示正确的一个为 IE8,但在提琴手它鞋 IE11 用户代理字符串。
标签: internet-explorer compatibility internet-explorer-11