检测IE版本不考虑兼容模式

发布于 2024-10-09 07:22:04 字数 84 浏览 6 评论 0原文

我想弄清楚是否可以检测您正在使用的 IE 版本,而不是您的文档模式。它可以是服务器或客户端代码(无关紧要),我只需要知道用户安装了哪个版本的 IE 即可。

I'm trying to figure out if it's possible to detect what version of IE you are using, and not your document-mode. It can be server or client-code (doesn't matter), I just need to know what version of IE the user has installed.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

离去的眼神 2024-10-16 07:22:04

通过检查用户代理字符串,可以在两者中检测到它。请注意,浏览器可以欺骗其 UA 字符串,但这种情况现在比过去少见。有关旧版 UA 字符串,请参阅 MSDN 上的这篇文章

另请注意,IE8 在兼容模式和标准模式下发送不同的 UA 字符串(请参阅 这个 - 两者都是 IE8,尽管前者说 MSIE 7.0) 。

有关 UA 字符串的长列表,请参阅 - 请注意,您应该查看对于模式,不完全匹配,因为安装的软件会修改 UA 字符串。

IE9 有一些新的 UA 字符串 - 请参阅 IEBlog 了解详细信息

总结一下(并借用 @EricLaw 的评论):

  • UA 字符串中没有 Trident - 检查 MSIE [0-9].0 版本 Trident/4.0 - IE 8 的字符串
  • 不相关
  • MSIE 中的版本与Trident/5.0 - IE 9

It could be detected in both, by examining the User-Agent string. Note that browsers can spoof their UA string, but this is rarer now than in the past. See this article on MSDN for older UA strings.

Note also that IE8 sends a different UA string in Compatibility mode and in Standards mode (see this and this - both are IE8, although the former says MSIE 7.0).

See this for a long list of UA strings - note that you should be looking for a pattern, not exact match, as installed software will modify the UA string.

IE9 has some new UA string thing - see the IEBlog for details.

To summarize (and borrow from @EricLaw's comment):

  • no Trident in UA string - check the MSIE [0-9].0 string for version
  • Trident/4.0 - IE 8, version in MSIE is not relevant
  • Trident/5.0 - IE 9
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文