js判断浏览器,包括Edge浏览器

/*
* 描述:判断浏览器信息
* 编写:LittleQiang_w
* 日期:2016.1.5
* 版本:V1.1
*/

//判断当前浏览类型
function BrowserType()
{
var userAgent = navigator.userAgent; //取得浏览器的userAgent字符串
var isOpera = userAgent.indexOf("Opera") > -1; //判断是否Opera浏览器
var isIE = userAgent.indexOf("compatible") > -1 && userAgent.indexOf("MSIE") > -1 && !isOpera; //判断是否IE浏览器
var isEdge = userAgent.indexOf("Edge") > -1; //判断是否IE的Edge浏览器
var isFF = userAgent.indexOf("Firefox") > -1; //判断是否Firefox浏览器
var isSafari = userAgent.indexOf("Safari") > -1 && userAgent.indexOf("Chrome") == -1; //判断是否Safari浏览器
var isChrome = userAgent.indexOf("Chrome") > -1 && userAgent.indexOf("Safari") > -1; //判断Chrome浏览器

if (isIE) 
{
var reIE = new RegExp("MSIE (\\d+\\.\\d+);");
reIE.test(userAgent);
var fIEVersion = parseFloat(RegExp["$1"]);
if(fIEVersion == 7)
{ return "IE7";}
else if(fIEVersion == 8)
{ return "IE8";}
else if(fIEVersion == 9)
{ return "IE9";}
else if(fIEVersion == 10)
{ return "IE10";}
else
{ return "0"}//IE版本过低
}//isIE end

if (isFF) { return "FF";}
if (isOpera) { return "Opera";}
if (isSafari) { return "Safari";}
if (isChrome) { return "Chrome";}
if (isEdge) { return "Edge";}
}//myBrowser() end

//判断是否是IE浏览器
function isIE()
{
var userAgent = navigator.userAgent; //取得浏览器的userAgent字符串
var isIE = userAgent.indexOf("compatible") > -1 && userAgent.indexOf("MSIE") > -1 && !isOpera; //判断是否IE浏览器
if(isIE)
{
return "1";
}
else
{
return "-1";
}
}

==========================

补充

原来的函数写法:对于新版的ie11已经不支持了
function isIE(){
if (window.navigator.userAgent.indexOf("MSIE")>=1) 
return true; 
else
return false; 
}


ie10及以上不支持ie浏览器的判断了,因为ie11已经不支持document.all了,下面是支持ie11的版本的,当然ie6-8也是支持的
function isIE() { //ie?
 if (!!window.ActiveXObject || "ActiveXObject" in window)
  return true;
  else
  return false;
}

=================================

补充

IE6~IE10的浏览器特征明显,存在msie字符串,而IE11去掉了msie字符串,可以通过rv后面的版本号识别IE11,具体方法如下:
function IETester(userAgent){
    var UA =  userAgent || navigator.userAgent;
    if(/msie/i.test(UA)){
        return UA.match(/msie (\d+\.\d+)/i)[1];
    }else if(~UA.toLowerCase().indexOf('trident') && ~UA.indexOf('rv')){
        return UA.match(/rv:(\d+\.\d+)/)[1];
    }
    return false;
}
IETester();//不传参数返回当前IE版本,如果不是IE内核浏览器,返回false
IETester('Mozilla/5.0 (Windows NT 6.3; WOW64; Trident/7.0; rv:11.0) like Gecko');//传userAgent字符串,用来判断其他IE浏览器的版本,该示例返回11.0

转载地址:http://www.cnblogs.com/garfieldzhong/p/5815187.html

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
可以通过以下方法判断当前浏览器版本: 1. 使用 navigator.userAgent 属性获取浏览器信息字符串: ``` var userAgent = navigator.userAgent; ``` 2. 根据不同的浏览器判断规则,解析出浏览器名称和版本号: ``` // 判断是否为IE浏览器 if (userAgent.indexOf("MSIE") != -1 || userAgent.indexOf("Trident") != -1) { // 获取IE版本号 var ieVersion = userAgent.match(/(MSIE|rv:)\s?([\d\.]+)/)[2]; console.log("IE " + ieVersion); } // 判断是否为Edge浏览器 else if (userAgent.indexOf("Edge") != -1) { // 获取Edge版本号 var edgeVersion = userAgent.match(/Edge\/([\d\.]+)/)[1]; console.log("Edge " + edgeVersion); } // 判断是否为Chrome浏览器 else if (userAgent.indexOf("Chrome") != -1) { // 获取Chrome版本号 var chromeVersion = userAgent.match(/Chrome\/([\d\.]+)/)[1]; console.log("Chrome " + chromeVersion); } // 判断是否为Firefox浏览器 else if (userAgent.indexOf("Firefox") != -1) { // 获取Firefox版本号 var firefoxVersion = userAgent.match(/Firefox\/([\d\.]+)/)[1]; console.log("Firefox " + firefoxVersion); } // 判断是否为Safari浏览器 else if (userAgent.indexOf("Safari") != -1) { // 获取Safari版本号 var safariVersion = userAgent.match(/Version\/([\d\.]+)/)[1]; console.log("Safari " + safariVersion); } ``` 注意:以上代码只是简单的示例,实际中可能需要根据具体需求进行修改和完善。同时,由于不同浏览器的 user agent 字符串格式并不相同,因此解析方法也可能存在不同。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值