最短JS判断是否为IE6(!-[1,]&&!window.XMLHttpRequest)(转)

常用的 JavaScript 检测浏览器为 IE 是哪个版本的代码,包括是否是最人极端厌恶的 ie6 识别与检测。

 1 var isIE=!!window.ActiveXObject;
 2 var isIE6=isIE&&!window.XMLHttpRequest;
 3 var isIE8=isIE&&!!document.documentMode;
 4 var isIE7=isIE&&!isIE6&&!isIE8;
 5 if (isIE){
 6   if (isIE6){
 7     alert("ie6");
 8   }else if (isIE8){
 9    alert("ie8");
10   }else if (isIE7){
11     alert("ie7");
12   }
13 }

 

然后是一个稍微短的 js 判断是否 ie 的方法:
这个貌似是利用 IE 中 JScript所特有的条件编译(或曰条件注释)来区分 IE 和非 IE(这里的IE/非IE均是针对内核而言,以IE为内核的浏览器将视为IE)

 1 var ie = 0/*@cc_on+1@*/; 

一个最短的 js 判断 ie 或非 ie 的代码,大小仅仅 7bytes:

 1 var ie = !+'\v1'; 

2010年1月,一位俄国人利用了IE与标准浏览器在处理数组的toString方法的差异,仅6bytes就完美完成了是否IE浏览器的检测:(不能判断ie9以上版本)

 1 var ie = !-[1,]; 

利用这些发现,我们可以使代码写的更短。如今检测是否为 IE6 其实可以写成:

 1 var ie6=!-[1,]&&!window.XMLHttpRequest; 

转载于:https://www.cnblogs.com/yijinc/p/5633062.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值