Javascript 浏览器版本检测

Javascript 浏览器版本检测,javascript,jquery,browser,Javascript,Jquery,Browser,我在当前项目中有一个规范,要求我们建议用户哪些浏览器最适合使用web应用程序。如果他们当前使用的浏览器版本不在我们想要显示消息的“理想”浏览器列表中 检查用户浏览器特定版本的最佳方法是什么。我知道以下使用jQuery的情况,但这对特定版本没有帮助 $(document).ready(function() { var b = ''; $.each($.browser, function(i, val) { if (i=='safari' && val==t

我在当前项目中有一个规范,要求我们建议用户哪些浏览器最适合使用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或更高版本等?

请查看


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

还要在docs.jquery.com中查看$.browser.version


对于Firefox2.x.x,它可以返回2.0,请检查文档:)

是一个JQuery插件,它将帮助Internet Explorer 10及以上版本与IE 9及以下版本表现不同。当使用javascript时,您需要以不同的方式处理这些场景。以下代码适用于我:)


谢谢,但我不确定YUI检测与我给出的JQuery示例有何不同?它仍然没有浏览器版本,比如Firefox3.0.5。它只返回Firefox。如果我们可以使用标准JavaScript的JQuery库,这也是最好的,因为我们已经在使用它了。
    //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');
    }