最近翻《Javascript高级程序设计》的时候看了比较正式的判断浏览器的方法,然后又在网上找了很多small tricks or hacks来判断浏览器,直接上代码:
var ie = !+"\v1",
ie1 = !!top.execScript,
ie2 = (function() {
/*@cc_on
@if (@_jscript)
return true;
@else */
return false;
/*
@end
@*/
})(),
ie3 = !('__proto__' in {}),
ie4 = (function(IE){
try{
IE=this.window=!1;
}catch(e){
IE=!0;
};
return IE;
})(),
ie5 = /*@cc_on!@*/false,
IEVersion = 0/*@cc_on+ScriptEngineMajorVersion()@*/';
alert(IEVersion);
ie4好像不行,其它都可以(自己的家用电脑只有ie9\chrome\firefox16,如有发现不行的可以留言给我),最狠的是IEVersion 这个方法你开兼容模式也不能改变版本。
参考资料里还有更利害的,各位看官可以去围观一下。
参考资料:
1、http://webreflection.blogspot.com/2009/01/32-bytes-to-know-if-your-browser-is-ie.html
2、http://stackoverflow.com/questions/8725905/zepto-fallback-to-jquery/8734106#8734106
3、http://www.thespanner.co.uk/2009/01/29/detecting-browsers-javascript-hacks/