搜罗各种方法来判断浏览器是否为IE浏览器

1.最简单的【来自:http://www.cnblogs.com/heganlin/p/5889743.html】

if(!+[1,]){
layer.msg("是IE浏览器!",{icon:2,offset:'100px',time:8000});
}

局限:本判断方法经过判断在IE7  IE8  IE8兼容模式

   在IE9  IE10   IE11 不起作用

解释:

  

  alert([1,2]);//相当于alert([1,2].toString()); --这在IE与非IE上都相同,都会弹出"1,2"
  alert([1,]);//相当于alert([1,].toString());--在非IE的标准浏览器上,js引擎会自动删除最后的",",所以在非IE上会弹出"1",而在IE上会弹出"1,"
  alert(+[1,]);// 根据上面的解释,这一句在IE上相当于alert(+"1,"),而在非IE上相当于alert(+"1"),正号的作用在于试图将字符串转换为数 字,"1,"当然不是数字,而"1"可以转换为数字1,所以最终的结果:IE上会转换失败弹出"NaN",而非IE浏览器上会弹出数字"1"
  

  alert(NaN==true);//弹出 false
  alert(NaN==false);//弹出 false
  alert(NaN==NaN);//弹出 false
  可以发现,NaN无论和谁比较返回都是false
  

  alert(!NaN);//相当于alert(!(NaN==true)),根据上面的解释当然是弹出true
 
 
  //所以,alert(!+[1,]) 最终在IE上会弹出"true",下面再来看看firefox等非IE浏览器上的表现
  alert(new Boolean(0));//false
  alert(new Boolean(1));//true
  alert(new Boolean(-1));//true
  //即:数字0会转换为false,其它任何数字都会转换为true,所以最终在非IE浏览器上最终等效于:
  alert(!1);
  //即
  alert(!true)//最终会得到false
 
  //综上所述:下面的这个判断就能判定浏览器是不是IE
  if (!+[1,]){
      alert("是IE浏览器!")
  }
  else{
      alert("不是IE!")
  }
 
2.可以测试所有IE浏览器
if (!!window.ActiveXObject || "ActiveXObject" in window){
layer.alert('本调查问卷暂不支持IE浏览器!建议您使用谷歌或360极速模式等非IE浏览器', {icon: 2,offset:'100px',shade: [0.8, '#393D49']});
}

【js】判断浏览器是否IE浏览器的更多相关文章

  1. js判断是否为手机浏览器

    JS判断手机浏览器 判断原理: JavaScript是前端开发的主要语言,我们可以通过 编写JavaScript程序来判断浏览器的类型及版本.JavaScript判断浏览器类型一般有两种办法,一种是根 ...

  2. js判断是否是ie浏览器且给出ie版本

    之前懒得写判断ie版本js,因为网上关于这方面的代码太多了,所以从网上拷贝了一个,放到项目上才发现由于时效性的问题,代码不生效.就自己写一个吧. 怎么去看浏览器的内核等信息 ---- js的全局对象w ...

  3. js判断是哪种浏览器和阻止页面加载

    <html> <head> <meta http-equiv="Content-Type" content="text/html; char ...

  4. js判断是否为ie浏览器

    之前在开发时遇到浏览器的兼容性问题,涉及到对ie浏览器的判断.现在此做个笔记. 这里我以函数的形式来判断,在用的时候直接调用即可. var isIE = !!window.ActiveXObject ...

  5. js判断是否是微信浏览器以及重定向

    async created () {//这个是判断是否是微信浏览器, let ua = navigator.userAgent.toLowerCase() if (ua.match(/MicroMes ...

  6. js 判断是否是IE浏览器及ie版本

      方式一:只判断是否是ie浏览器 /** * 判断是否是IE浏览器,支持IE6-IE11 */ function isIE() { //ie? if (!!window.ActiveXObject ...

  7. 用js判断是否是微信浏览器

      //判断是否是微信浏览器的函数 function isWeiXin(){ //window.navigator.userAgent属性包含了浏览器类型.版本.操作系统类型.浏览器引擎类型等信息,这 ...

  8. js 判断是什么类型浏览器

    //  firefoxif ( window.sidebar && "object" == typeof( window.sidebar ) && ...

  9. JS判断在哪一端浏览器打开

    <script src="js/jquery-2.2.3.min.js"></script> <script> var browser = { ...

  10. JS判断是否是IE浏览器

    前最短的IE判定借助于IE不支持垂直制表符的特性搞出来的. var ie = !+"\v1"; 仅仅需要7bytes!参见这篇文章,<32 bytes, ehr ... 9, ...

随机推荐

  1. codevs3160 最长公共子串

    传送门:http://codevs.cn/problem/3160/ [题解] CTSC前复习模板 sa的模板..记住基数排序就够了(还有height) 还有就是sa[i]表示排名为i的后缀是啥..r ...

  2. 谈数据中心SDN与NFV

    看到一篇谈论SDN与NFV的文章,分析的还不错,贴过来方便自己后续查阅: http://network.chinabyte.com/175/13095675.shtml 论数据中心SDN与NFV技术关 ...

  3. 前端开发各种cross之cross domain

    作为一个苦逼前端开发工程师,不得不面对各种cross,比如面对五花八门的浏览器我们必须cross browser,面对各种终端,我们必须cross device,在这么多年的前端开发经历中,在不同的域 ...

  4. Linux利用list_head结构实现双向链表

    原文地址:http://www.cnblogs.com/bastard/archive/2012/10/19/2731107.html 通常实现双向链表的数据结构: struct list_node1 ...

  5. python基础===python3 get和post请求(转载)

    get请求 #encoding:UTF-8 importurllib importurllib.request data={} data['name']='aaa' url_parame=urllib ...

  6. request threaded-only IRQs with IRQF_ONESHOT【转】

    转自:http://blog.csdn.net/bdc995/article/details/8697374 Gitweb:     http://git.kernel.org/linus/;a=co ...

  7. 【“10”力全开 游戏“Ti”厉害】ZX53VE-新飞行堡垒笔记本(Windows 10 Home/新七代标压i7-7700HQ/GTX 1050Ti 4G/8G内存/1TB+128GB)

    [“10”力全开 游戏“Ti”厉害]ZX53VE-新飞行堡垒笔记本(Windows 10 Home/新七代标压i7-7700HQ/GTX 1050Ti 4G/8G内存/1TB+128GB) http: ...

  8. windows中Appium-desktop配合夜神模拟器的使用

    1.安装Android SDK并配好环境 ANDROID_HOME :C:\Users\18810\AppData\Local\Android\Sdk path:%ANDROID_HOME%\plat ...

  9. 查看Linux上的CPU核心数、线程数

    grep "physical id" /proc/cpuinfo|sort -u grep "cpu cores" /proc/cpuinfo|uniq gre ...

  10. times、 time、clock函数说明

    sysconf( _SC_CLK_TCK )  功能  获取系统的 时钟滴答的频率. clock_gettime() clock()返回的是各个线程运行cpu时间的和, 返回值一直都是0. 定义函数: ...