这篇文章主要分享了判断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引擎会自动剔除它。 


最新资讯
一个八卦的AI,嗅到了你和TA之间基情满满

一个八卦的AI,嗅到了你

可能是遗传了人类父母的八卦天分,机器们也学会八卦了。
徐峥最满意的影片,《药神》火爆背后的主创故事

徐峥最满意的影片,《

《药神》的现象化,也给中国认真做电影的人带去了鼓励,在
美滴之争:同边网络效应的故事

美滴之争:同边网络效应

距离6月25日滴滴外卖成都开城已经过去十多天,然而,作为
明年iPhone将支持3倍光学变焦 可立体成像

明年iPhone将支持3倍

有多篇报道称,新iPhone将使用一个三摄像头系统,可通过先
78名客户集体诉讼:称苹果“偷偷限制”旧iPhone性能

78名客户集体诉讼:称苹

据外媒MacRumors报道,苹果公司因iPhone“降速门”而面
儿童AI硬件江湖崛起!连微商都坐不住了

儿童AI硬件江湖崛起!连

在儿童这样一个庞大与复杂的市场中,产品良莠不齐、泥沙
最新文章
Angular2进阶之如何避免Dom误区

Angular2进阶之如何避

这篇文章主要介绍了Angular2进阶之如何避免Dom误区,小
使用FileReader API创建Vue文件阅读器组件

使用FileReader API创

这篇文章主要介绍了使用FileReader API创建一个Vue的
react 实现页面代码分割、按需加载的方法

react 实现页面代码分

本篇文章主要介绍了react 实现页面代码分割、按需加载
Vue项目分环境打包的实现步骤

Vue项目分环境打包的

这篇文章主要介绍了Vue项目如何分环境打包,实现方法大
vue 组件中slot插口的具体用法

vue 组件中slot插口的

这篇文章主要介绍了vue 中slot 的具体用法,包括子组件
JS遍历DOM文档树的方法实例详解

JS遍历DOM文档树的方

这篇文章主要介绍了JS遍历DOM文档树的方法,结合实例形