码迷,mamicode.com
首页 > Web开发 > 详细

如何高效的用判断用js判断ie6

时间:2015-03-17 12:09:06      阅读:168      评论:0      收藏:0      [点我收藏+]

标签:

  用js判断ie6的方法有很多,如:

1、

  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. }

2、能不能高效点呢,看到了其他的写法:

这个貌似是利用 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浏览器的检测:
复制代码代码如下:

  1. var ie = !-[1,];
复制代码


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

复制代码代码如下:

  1. var ie6=!-[1,]&&!window.XMLHttpRequest;
复制代码


之前那大段累赘的分析 navigator,然后正则比较的方式,后面的 js 方法是不是效率更高了!

如何高效的用判断用js判断ie6

标签:

原文地址:http://www.cnblogs.com/dunken/p/4343730.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!