【问题标题】:check version of browser检查浏览器版本
【发布时间】:2010-06-08 13:14:30
【问题描述】:

我如何找到用户正在使用的浏览器版本并要求他升级它

【问题讨论】:

  • 您可以使用可被欺骗的用户代理并提醒他们……但这取决于您的目标,他们为什么需要升级?他们是否需要他们当前不支持的功能?在这种情况下,您应该检查该功能是否存在。
  • 如何检查用户浏览器是否支持该功能。
  • 相同:这取决于 :) 您在寻找哪个功能? Flash 支持、不透明度支持、CSS3 选择器,还有什么?
  • @NickCraver 在我的情况下,我想告诉他们从 IE7 更新。 >:(他们不知道他们的浏览器已经过时了,他们没有责任知道,因为他们是机构用户,不允许控制他们使用的软件;但我可以告诉他们它已经过时了,所以他们会打扰他们系统管理员。:)

标签: c# asp.net javascript


【解决方案1】:

你可以perform feature detection using jQuery,像这样:

if (!jQuery.support.opacity)
    //Waah waah waah...

你也可以check the browser version using jQuery,像这样:

if (!jQuery.browser.msie && jQuery.browser.version === 6)
    //Waah waah waah...

但是,应尽可能避免。

【讨论】:

    【解决方案2】:

    您可以从Request.ServerVariables 读取HTTP_USER_AGENT

    在 ASP.NET 中:

    Response.Write(HttpContext.Current.Request.ServerVariables["HTTP_USER_AGENT"]);
    

    More info here

    【讨论】:

      【解决方案3】:

      如果您已经在使用 jQuery 或 mootools 等 javascript 库,那么您也可以使用这些工具。

      jQuery:

      if( $.browser.msie ) {
       // do something
      }
      

      mootools:

      if (Browser.Engine.trident4) {
        // ie6
      }
      

      请记住,这通常是错误的依赖。甚至jQuery documentation 也有一个警告,建议使用feature detection 而不是浏览器检测。

      【讨论】:

        【解决方案4】:

        如果只是关于 Internet Explorer,可以使用条件 cmets:

        <!--[if IE 6]>
        Special instructions for IE 6 here
        <![endif]-->
        

        更多信息http://www.quirksmode.org/css/condcom.html

        【讨论】:

          【解决方案5】:

          在服务器端代码上:Request.Browser 返回一个 HttpBrowserCapabilities 实例,其中包含您要查找的所有信息。

          http://msdn.microsoft.com/en-us/library/system.web.httpbrowsercapabilities.aspx

          在客户端脚本端(javascript):

          http://www.quirksmode.org/js/detect.html

          除了@Nick 的评论,下面的 MSDN 帖子:

          http://msdn.microsoft.com/en-us/library/x3k2ssx2.aspx

          状态:

          浏览器功能指示是否 浏览器类型一般支持 JavaScript 等功能,而不是 是否是单个实例 浏览器启用了这些功能或 已禁用。

          我认为浏览器的版本和类型会比较一致。

          【讨论】:

          • 浏览器能力取决于该信息是否是最新的,这通常不是的情况,而不是浏览器前进的速度。
          【解决方案6】:
          javascript:
            alert(navigator.appVersion)
          

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 2016-03-21
            • 1970-01-01
            • 2014-12-28
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2019-07-24
            • 2018-07-27
            相关资源
            最近更新 更多