检测Firefox< 3.6

时间:2012-02-01 12:48:13

标签: javascript browser-detection firefox-3

我试图找到任何好的解决方案来检测firefox版本< 3.6为了向他们发出通知,我的网站在较新的浏览器中工作得更好(至少3.6)。我偶然发现http://api.jquery.com/jQuery.browser/ - 但没有找到如何检测低于3.6的所有版本的示例。有什么建议吗?

谢谢!

4 个答案:

答案 0 :(得分:4)

/* ===== Firefox ===== */

// Select Firefox
if (jQuery.browser.mozilla) {
    // do sth.
}

// Select Firefox 1.5.x to 2.x
if (jQuery.browser.mozilla && jQuery.browser.version.substr(0, 3) == '1.8') {
    // do sth.
}

// Select Firefox under 3.x
if (jQuery.browser.mozilla && jQuery.browser.version < '1.9') {
    // do sth.
}

// Select Firefox 3.0.x and above
if (jQuery.browser.mozilla && jQuery.browser.version.substr(0, 3) == '1.9') {
    // do sth.
}

// Select just Firefox 2.0.x
if (jQuery.browser.mozilla && jQuery.browser.version == '1.8.1') {
    // do sth.
}

// Select just Firefox 3.0.x
if (jQuery.browser.mozilla && jQuery.browser.version == '1.9') {
    // do sth.
}

// Select just Firefox 3.5.x
if (jQuery.browser.mozilla && jQuery.browser.version == '1.9.1') {
    // do sth.
}

// Select just Firefox 3.6.x
if (jQuery.browser.mozilla && jQuery.browser.version == '1.9.2') {
    // do sth.
}

/* ===== Internet Explorer ===== */

// Select Internet Explorer
if (jQuery.browser.msie) {
    // do sth.
}

// Select Internet Explorer above 6
if (jQuery.browser.msie && jQuery.browser.version > 6) {
    // do sth.
}

// Select Internet Explorer 7 and below
if (jQuery.browser.msie && jQuery.browser.version <= 7) {
    // do sth.
}

// Select just Internet Explorer 6
if (jQuery.browser.msie && jQuery.browser.version == '6.0') {
    // do sth.
}

// Select just Internet Explorer 7
if (jQuery.browser.msie && jQuery.browser.version == '7.0') {
    // do sth.
}

// Select just Internet Explorer 8
if (jQuery.browser.msie && jQuery.browser.version == '8.0') {
    // do sth.
}

// Select just Internet Explorer 9
if (jQuery.browser.msie && jQuery.browser.version == '9.0') {
    // do sth.
}

/* ===== Safari / Chrome ===== */

// Select Safari / Chrome
if (jQuery.browser.safari) {
    // do sth.
}

// Select Safari 3
if (jQuery.browser.safari && (navigator.appVersion.indexOf('3.') != -1)) {
    // do sth.
}

// Select Safari 4
if (jQuery.browser.safari && (navigator.appVersion.indexOf('4.') != -1)) {
    // do sth.
}

// Select Chrome 1
if (jQuery.browser.safari && (navigator.appVersion.indexOf('1.') != -1)) {
    // do sth.
}

// Select Chrome 3
if (jQuery.browser.safari && (navigator.appVersion.indexOf('3.') != -1)) {
    // do sth.
}

/* ===== Opera ===== */

// Select Opera
if (jQuery.browser.opera) {
    // do sth.
}

// Select Opera 9.5 and above
if (jQuery.browser.opera && jQuery.browser.version >= '9.5') {
    // do sth.
}

// Select just Opera 9.5
if (jQuery.browser.opera && jQuery.browser.version == '9.5') {
    // do sth.
}

// Select just Opera 10
// Note: Opera 10's user agent looks like Opera/9.80 [...] Version/10.00
if (jQuery.browser.opera && jQuery.browser.version == '9.8') {
    // do sth.
}

答案 1 :(得分:3)

试试这个

var itsOldFF = false;
var itsFF = false;
$.each($.browser, function (i, val) {
   if (i == "mozilla" && itsFF == false){
      itsFF = true;
      return;
   }
   if(itsFF && parseFloat(val) < 3.6) itsOldFF = true;
}); 
return itsOldFF;

修改

jsFiddle.net上的演示

答案 2 :(得分:2)

一般来说,最好不要检测功能而不是版本。检测您需要的功能而不是版本号

答案 3 :(得分:1)

var ua = $.browser;
if (ua.mozilla && parseFloat(ua.version.slice(0,3)) < 3.6) {
    alert( "Do stuff for firefox 3.6 or less" );
}