这篇文章主要分享了判断IE、FF、Opera、Safari、Chrome等浏览器和版本的两种方法,需要的朋友可以参考下

因为ie10-ie11的版本问题,不再支持document.all判断,所以ie判断函数要重新写了

function isIE() { //ie?      if (!!window.ActiveXObject || "ActiveXObject" in window)        return true;      else        return false;    }

第一种,只区分浏览器,不考虑版本


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

//以下是调用上面的函数
var mb = myBrowser();
if ("IE" == mb) {
  alert("我是 IE");
}
if ("FF" == mb) {
  alert("我是 Firefox");
}
if ("Chrome" == mb) {
  alert("我是 Chrome");
}
if ("Opera" == mb) {
  alert("我是 Opera");
}
if ("Safari" == mb) {
  alert("我是 Safari");
}

第二种,区分浏览器,并考虑IE5.5 6 7 8


function myBrowser(){
  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 isFF = userAgent.indexOf("Firefox") > -1; //判断是否Firefox浏览器
  var isSafari = userAgent.indexOf("Safari") > -1; //判断是否Safari浏览器
  if (isIE) {
  var IE5 = IE55 = IE6 = IE7 = IE8 = false;
  var reIE = new RegExp("MSIE (d+.d+);");
  reIE.test(userAgent);
  var fIEVersion = parseFloat(RegExp["$1"]);
  IE55 = fIEVersion == 5.5;
  IE6 = fIEVersion == 6.0;
  IE7 = fIEVersion == 7.0;
  IE8 = fIEVersion == 8.0;
  if (IE55) {
  return "IE55";
  }
  if (IE6) {
  return "IE6";
  }
  if (IE7) {
  return "IE7";
  }
  if (IE8) {
  return "IE8";
  }
  }//isIE end
  if (isFF) {
  return "FF";
  }
  if (isOpera) {
  return "Opera";
  }
}//myBrowser() end
//以下是调用上面的函数
if (myBrowser() == "FF") {
  alert("我是 Firefox");
}
if (myBrowser() == "Opera") {
  alert("我是 Opera");
}
if (myBrowser() == "Safari") {
  alert("我是 Safari");
}
if (myBrowser() == "IE55") {
  alert("我是 IE5.5");
}
if (myBrowser() == "IE6") {
  alert("我是 IE6");
}
if (myBrowser() == "IE7") {
  alert("我是 IE7");
}
if (myBrowser() == "IE8") {
  alert("我是 IE8");
}

下面给出一个判断当前浏览器是IE的JS代码.

原理是利用了IE与标准浏览器在处理数组的toString方法的差异做成的。对于标准游览器,如果数组里面最后一个字符为逗号,JS引擎会自动剔除它。 


最新资讯
中兴通讯:本次非公开发行股票将于2020年2月3日上市

中兴通讯:本次非公开

中兴通讯发布公告称,本次非公开发行股票将于2020年2月3
特斯拉市值超千亿 马斯克领取首份工资

特斯拉市值超千亿 马

特斯拉市值超过千亿美元,也标志着特斯拉CEO马斯克即将
华为开发者大会2020因疫情延期至3月:以直播呈现

华为开发者大会2020因

华为官方宣布,基于新型冠状病毒感染的肺炎疫情防控形势
韵达速递:将对抵达武汉的快件和车辆进行消毒

韵达速递:将对抵达武汉

韵达发布公告称,将在武汉及寄达地处理中心对快件与车辆
饿了么:除了医院及周边,武汉其他区域照常配送

饿了么:除了医院及周边

饿了么发布公告称,目前在武汉,除了医院及周边区域外,其他
京东:过去三天共售出口罩1.26亿只

京东:过去三天共售出口

1月23日,京东发布消息,称1月19日至22日期间,平台口罩累计
最新文章
jQuery设置下拉框显示与隐藏效果的方法分析

jQuery设置下拉框显示

这篇文章主要介绍了jQuery设置下拉框显示与隐藏效果的
策略模式实现 Vue 动态表单验证的方法

策略模式实现 Vue 动

策略模式(Strategy Pattern)又称政策模式,其定义一系列的
Layui Form 自定义验证的实例代码

Layui Form 自定义验

今天小编就为大家分享一篇Layui Form 自定义验证的实
图解NodeJS实现登录注册功能

图解NodeJS实现登录注

这篇文章主要介绍了NodeJS实现登录注册功能,本文图文
基于Layui自定义模块的使用方法详解

基于Layui自定义模块

今天小编就为大家分享一篇基于Layui自定义模块的使用
layer弹出层自适应高度,垂直水平居中的实现

layer弹出层自适应高

今天小编就为大家分享一篇layer弹出层自适应高度,垂直