通过javascript比较浏览器版本

通过javascript比较浏览器版本,javascript,browser,Javascript,Browser,如何通过javascript比较浏览器版本 例如,如果脚本想知道用户是否正在使用Firefox 3.5+ 有什么办法吗?在应用之前,你应该先使用它来确保它能正常工作。从该链接: 而浏览器检测工作正常 足以满足90%的访客,有些 晦涩难懂的浏览器不会被处理 显示的浏览器和浏览器 在你写完这一页后,你可能不会 也要有足够的保险。这个 结果可能是一系列的 错误消息或不正确的脚本 调用,而浏览器可以轻松 处理它。在这两种情况下,你都是 欺骗最终用户和编码 不对 要获取浏览器版本,可以使用: 此代码获取F

如何通过javascript比较浏览器版本

例如,如果脚本想知道用户是否正在使用Firefox 3.5+

有什么办法吗?

在应用之前,你应该先使用它来确保它能正常工作。从该链接:

而浏览器检测工作正常 足以满足90%的访客,有些 晦涩难懂的浏览器不会被处理 显示的浏览器和浏览器 在你写完这一页后,你可能不会 也要有足够的保险。这个 结果可能是一系列的 错误消息或不正确的脚本 调用,而浏览器可以轻松 处理它。在这两种情况下,你都是 欺骗最终用户和编码 不对

要获取浏览器版本,可以使用:


此代码获取Firefox的版本号:

var FFVersion = navigator.userAgent
                  .substring(navigator.userAgent.indexOf("Firefox"))
                  .split("/")[1];
您可以决定如何处理它们:

window.onload = function() {
    if (FFVersion < '3.5') { alert('please upgrade...') }
}
window.onload=function(){
如果(FFVersion<'3.5'){警报('请升级…')}
}

在javascript中使用navigator.userAgent

您将得到一个类似“Mozilla/5.0(Windows;U;Windows NT 6.1;en-GB;rv:1.9.2)Gecko/20100115 Firefox/3.6”的字符串


对于firefox,最后一个数字是版本。

随着firefox达到10.0,这一点现在失败了。提出不同的版本:

// Takes 2 strings "2.3.4.5" and "2.5" and returns less, equal and greater than 0
// depending which one is bigger
function compareVersions(a, b) {
  var v1 = a.split('.');
  var v2 = b.split('.');
  for(var i = 0; i < Math.min(v1.length, v2.length); i++) {
    var res = v1[i] - v2[i];
    if (res != 0)
      return res;
  }
  return 0;
}
//接受两个字符串“2.3.4.5”和“2.5”,并返回小于、等于和大于0的值
//取决于哪个更大
函数比较(a,b){
var v1=a.分割('.');
var v2=b.分割('.');
对于(变量i=0;i
将版本字符串解析为浮点类型,然后将其与if语句或任何您想要的内容进行比较。
以下是我用于检查IE浏览器版本的示例:

if(parseFloat($.browser.version) <= 8.0)
{
    // Do whatever you want if browser version lower than equal to 8.0
}
else
{
    // Do whatever you want if browser greater than 8.0
}

if(parseFloat($.browser.version)为什么你想知道用户使用的浏览器/版本?
quirksmode.org
有一个条目。它非常详细:答案很有趣,但如果我看得对,它不能解释一个比另一个长。与其做
Math.min
,不如尝试
0
填充较短的one找到需要注意的差异:
jQuery.browser
在jQuery 1.3中被弃用,在FireFox的1.9(详情请参见)中被删除,比如说54,
navigator.appVersion
等于
“5.0(Windows)”
——绝对不是FireFox的版本
if(parseFloat($.browser.version) <= 8.0)
{
    // Do whatever you want if browser version lower than equal to 8.0
}
else
{
    // Do whatever you want if browser greater than 8.0
}