判断IE各版本(精简版)

var isIE=!!window.ActiveXObject;

var isIE6=isIE&&!window.XMLHttpRequest;

var isIE8=isIE&&!!document.documentMode;

var isIE7=isIE&&!isIE6&&!isIE8;

if (isIE){

if (isIE6){

alert("ie6″);

}else if (isIE8){

alert("ie8″);

}else if (isIE7){

alert("ie7″);

}

}

上述是一般常用的JavaScript用来检测浏览器为IE哪个版本的代码。

而由于今年1月一位俄国人,利用了IE与标准浏览器在处理数组的toString方法的差异,完美的利用6bytes:!-[1,]完成了对是否为IE浏览器的检测 。而之前最短代码为:!+”v1″的7bytes。利用这些发现我们同样可以使我们的代码写的更短更有艺术。如今检测是否为IE6其实可以写成

!-[1,]&&!window.XMLHttpRequest

这个代码在实际使用中还是颇为有用的,既然能写的更短何乐而不为呢。相对于之前那大段累赘的分析navigator然后正则比较的方式当然效率更高,代码更简洁完全没有不用道理。在JavaScript编写过程中应该多多的利用诸如||、&&、!、!!这类的运算符,不光是在if()这样的情况下。 

link

评论

Popular Posts

随身WiFi折腾指南: 解锁、刷机与DIY

Cromite - 极度注重隐私的Chromium浏览器

《赤い涙 》灼眼的夏娜剧场版插曲

求职面试时常被问到的65个问题与技巧性回答

伤不起的盖茨比——那些年,我们没逆袭到的女神

人类的十个有趣心理效应

电话销售技巧8:如何绕过前台

Alexa互联网信息公司中文官方网站

拒绝道德绑架,这才是真正的公益广告

感情的瓶颈期或者说磨合期该怎么度过?