【问题标题】:Browser version Detection浏览器版本检测
【发布时间】:2009-01-09 10:15:59
【问题描述】:

我当前的项目中有一个规范,要求我们建议用户哪些浏览器最适合使用 Web 应用程序。如果他们当前使用的浏览器版本不在我们想要显示的“理想”浏览器列表中。

检查用户浏览器特定版本的最佳方法是什么。我知道使用 jQuery 的以下内容,但这对特定版本没有帮助。

$(document).ready(function() {
   var b = '';
   $.each($.browser, function(i, val) {
       if (i=='safari' && val==true) { b = 'safari'; }
       if (i=='opera' && val==true) { b = 'opera'; }
       if (i=='msie' && val==true) { b = 'msie'; }
       if (i=='mozilla' && val==true) {b = 'mozilla'; }
   });

   //Do Something With b, Like $('#dis').html(b);
}); 

我们希望能够说您的浏览器是 Firexfox 2 或更高版本还是 IE6 或更高版本等?

【问题讨论】:

    标签: javascript jquery browser


    【解决方案1】:

    Here 是一个有用的 JQuery 插件

    【讨论】:

      【解决方案2】:

      还要检查 docs.jquery.com 中的 $.browser.version

      它可以为 Firefox 2.x.x 返回 2.0,查看文档 :)

      【讨论】:

        【解决方案3】:

        查看YUI User-Agent Detection

        编辑:现在我已经告诉你怎么做,我只是想确保你知道这通常被认为是一种反模式,对吧?如果可以的话,我建议不要这样做,但我意识到这并不总是一种选择。

        【讨论】:

        • 谢谢你,但我不确定 YUI 检测与我给出的 JQuery 示例有何不同?它仍然没有获得浏览器版本,例如 Firefox 3.0.5。它只返回 Firefox。如果我们可以使用标准 JavaScript 的 JQuery 库,那也是最好的,因为我们已经在使用它了。
        • 我很确定它返回的是版本号,而不是简单的布尔值。
        【解决方案4】:

        Internet Explorer 10 及更高版本的行为与 IE 9 及更低版本不同。使用 javascript 时,您需要以不同的方式处理这些场景。以下代码对我有用:)

            //MSStream object supported only for IE 10 and 11 (hope this will work for above IE 11 too .. )
            var isIE10or11 = window.MSStream;
        
            //FormData object allow you to send form data as key and value pairs with ajax requests. Supported in modern browsers.
            var isFormDataSupported = (window.FormData !== undefined);
        
            if(isIE10or11 && isFormDataSupported){
               alert('IE 10 or 11');
            }
            else if(!isIE10or11  && isFormDataSupported){
               alert('HTML 5 browser Excluding IE');
            }
            else{
               //Neither supports MSStream nor FormData object
               alert('IE Version 9 or below');
            }
        

        【讨论】:

          猜你喜欢
          • 2016-03-21
          • 1970-01-01
          • 2014-12-28
          • 2011-08-20
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2011-03-14
          • 2012-11-29
          相关资源
          最近更新 更多