打开兼容模式时,如何确定正确的浏览器版本

时间:2011-07-18 03:47:14

标签: c# .net asp.net internet-explorer

我需要确定用户使用的浏览器版本,但默认情况下会为整个公司启用兼容模式。

在服务器端脚本中,如何确定真正的浏览器版本?

由于

更新 我的页面正确显示了使用document.documentMode的IE版本,但我无法弄清楚如何将其传递到服务器端,以便我可以使用它。

4 个答案:

答案 0 :(得分:4)

Request.Browser将为您提供完整的浏览器信息,您可以在其中查看版本,浏览器名称,浏览器类型等。

Request.Browser.Version // Return complete browser version infor
Request.Browser.Browser // If browser is IE then it will return **IE**

答案 1 :(得分:2)

javascript中的document.documentMode是解决方案。

<script>
alert(document.documentMode);
<script>

答案 2 :(得分:0)

您可以针对特定的Web应用程序将其关闭,而不是与兼容模式对抗。我们在所有网站都这样做,因为兼容模式真的搞砸了很多东西。

Force IE compatibility mode off using tags

答案 3 :(得分:0)

如果在客户端上,则在服务器上使用HttpContext.Current.Request.UserAgent,然后使用navigator.userAgent 然后来自ie7的指令没有三叉戟关键字,但ie8是三叉戟/ 4,IE5是三叉戟/ 5。

首先查找MSIE x.x,如果x.x为7,则查找Trident / y.y。如果缺少三叉戟,则IE7如果y.y为4则为其IE8,如果y.y为5则为ie9,如果y.y为6则为ie10

http://blogs.msdn.com/b/ie/archive/2010/03/23/introducing-ie9-s-user-agent-string.aspx