在js中,能使用特征监测就尽量不要使用浏览器嗅探。嗅探浏览器目的是判断可否使用这个对象或者API,但是抛开浏览器
的各个版本的userAgent不说,还有些浏览器打补丁的情况,造成判断异常复杂,兜了个大的圈子,而特征监测则是直接
了当,不存在维护困难的问题。
利用IE的特征监测来推测IE的的版本号非常好用,也可利用IE的一些特有对象来识别IE所有系列。
‘VBArray‘ in window // true ‘ActiveXObject‘ in window //true if(isIE){ if(document.documentMode == 11){ isIE11 = true; }else if(‘WebSocket‘ in window){ isIE10 = true; }else if(‘HTMLElement‘ in window){ isIE9 = true; }else if(‘localStorage‘ in window){ isIE8 = true; } else if(‘minHeight‘ in div.currentStyle){ isIE7 = true; } else{ isIE6 = true; document.execCommad(‘backgroundimagecache‘,false,false); //IE6并不会对背景图片进行缓存,故进行修补 } }
对于ff:
经最新版本测试
‘netscape‘ in window // true
时间: 2024-11-09 17:13:24