常用的 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/*@[email protected]*/;
一个最短的 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;
时间: 2024-11-06 07:40:04