之前一直使用检查navigator.userAgent字符串来判断浏览器类型
switch(navigator.userAgent.toLowerCase().indexOf("msie"))//firefox|opera|safari|msie
{
case(-1):
alert("DOM浏览器");
default:
alert("IE浏览器");
}
f
今天在看一篇文章中提到用户在某些浏览器可以更改userAgent,这样就不能单纯使用这个方法来检查浏览器。在实际使用中一般检查最多的是ie浏览器与标准dom浏览器的区别,这样可以使用window.addEventListener来判断这两种类型的浏览器
if(typeof window.addEventListener==="function"){
alert("DOM浏览器");
}else{
alert("IE");
}
高手写的一个检测浏览器的代码
var isIE = !!(window.attachEvent && !window.opera);
var isOpera = !!window.opera;
var isSafari = navigator.userAgent.indexOf(‘AppleWebKit/’) > -1;
var isMoz = navigator.userAgent.indexOf(‘Gecko’) > -1 && navigator.userAgent.indexOf(‘KHTML’) == -1;
var isMobileSafari = !!navigator.userAgent.match(/Apple.*Mobile.*Safari/);
Related posts:
以上关联文章由 Yet Another Related Posts Plugin 提供支持。
2 Responses
断桥残雪
04|二|2010 1这里没有提到chrome跟Safari的判断的不同,其实如果使用jquery的判断,或者不添加Applewebkit可能chrome也当成了Safari,再就是一般浏览器判断都转变为小写比较好,我也写过一篇js浏览器的函数:http://www.js8.in/414.html
walkingp
04|二|2010 2Chrome的确是个不容忽视的浏览器,下次会专门讲到Chrome浏览器
Leave a reply