js判断当前浏览器类型,判断IE浏览器方法

判断IE浏览器最短方法:var isIE = !-[1,]

原理:[1,]在标准浏览器中返回"1",相当于调用[1,].toString(),在IE中返回"1,"
在这个时候对返回值使用负号强制转换为数字时,标准浏览器返回1,IE则返回NaN,
再对1和NaN取反时,标准浏览器返回false,IE返回true。

js判断浏览器类型

原文基本上没有什么问题,但他的判断方式还不是很严谨。

如:navigator.userAgent.indexOf("Safari")>0,如果"Safari"这个单词出现在userAgent的最前端,那不是就无法得到正确的结果了。应该把 >0 改为 !=-1
然后我对我机子上现有的5个独立内核浏览器做了下测试,发现Opera的userAgent值为"Opera/9.80 (Windows NT 5.1; U; Ed..."
正好印证了刚刚说的。
其实大多时候我们在做浏览器兼容时主要是针对 IE 和 非IE 浏览器,也就是说一般情况下只需要判断是否是IE浏览器即可。
判断当前浏览器类型代码

<script type="text/javascript" >

    <!-- 

function getOs() 

    var OsObject = ""; 

   if(isIE = navigator.userAgent.indexOf("MSIE")!=-1) { 

        return "MSIE"; 

   } 

   if(isFirefox=navigator.userAgent.indexOf("Firefox")!=-1){ 

        return "Firefox"; 

   } 

   if(isChrome=navigator.userAgent.indexOf("Chrome")!=-1){ 

        return "Chrome"; 

   } 

   if(isSafari=navigator.userAgent.indexOf("Safari")!=-1) { 

        return "Safari"; 

   }  

   if(isOpera=navigator.userAgent.indexOf("Opera")!=-1){ 

        return "Opera"; 

   } 

 alert("type -> "+getOs());

--> 

</script>

以上是 js判断当前浏览器类型,判断IE浏览器方法 的全部内容, 来源链接: utcz.com/z/348696.html

回到顶部