5

我正在尝试在我的网页上实现浏览器支持功能。对于 Firefox 3.6,它运行良好,但由于某种原因,IE 8 的 userAgent 返回了错误的值。

这是场景,当我在 IE8 上运行“本地”javascript 代码时,navigator.userAgent 返回正确的信息(MSIE 8.0)。但是当我在服务器上运行这个脚本时,它会在 IE 8 浏览器上返回 MSIE 7.0。

有任何想法吗?

4

3 回答 3

6

您还需要检查 Trident 令牌。

三叉戟令牌

当使用 F12 开发者工具更改 Internet Explorer 的浏览器模式时,会修改 user-agent 字符串的版本标记以使浏览器看起来是较早的版本。这样做是为了允许将特定于浏览器的内容提供给 Internet Explorer,并且通常仅在网站尚未更新以反映浏览器的当前版本时才需要。

发生这种情况时,会将一个 Trident 令牌添加到用户代理字符串中。此令牌包含一个版本号,使您能够识别浏览器的版本,而不管当前浏览器模式如何。

更多:http: //msdn.microsoft.com/en-us/library/ms537503.aspx

于 2012-12-05T09:32:10.313 回答
4

你确定你没有在IE7模式下运行吗?您可以在开发人员设置中的某处更改它(我认为是 F12)。

于 2011-10-14T23:46:19.370 回答
2

Microsoft 提供此页面:

http://msdn.microsoft.com/en-us/library/ms537509(v=vs.85).aspx

根据 Javascript 示例,人们会认为 IE8 会返回 8,而不是 7。

于 2011-10-14T23:49:00.987 回答