码迷,mamicode.com
首页 > Web开发 > 详细

JS判断浏览器版本

时间:2015-10-17 16:09:05      阅读:265      评论:0      收藏:0      [点我收藏+]

标签:

使用JS判断浏览器版本其实并不复杂,只是在判断IE浏览器时判断IE浏览器各个版本时需要花点心思。

1.使用判断浏览器USER_AGENT的方法判断出IE浏览器的情况下,在此基础上再判断其版本。

2.判断IE6、IE9、IE11的方法稍微特殊点。IE9及以上的版本alert(!-[1,])返回的是false,并且,IE9+是支持addEventListener的,但是IE11浏览器中是不支持原来IE中独有的事件绑定attachEvent。根据这些特性,可区分IE9和IE11.

当然,还可以利用其他特性来区分IE的各个版本,例如,可参考该链接 http://www.5ycode.com/353

 

此外,就属360浏览器的判断稍麻烦了。因为,360浏览器在3Q大战之后,开始使用IE浏览器的内核,现在又变成使用谷歌浏览器的的内核,目前跟谷歌浏览器的区别在于谷歌的webkitPersistentStorage是独立的,也因为这个谷歌可能无法正常看优酷的视频,而360可以,区别就在于二者的webkitPersistentStorage不同。

参考代码如下

    //判断浏览器版本
    $(function () {
        var explorer = window.navigator.userAgent;
        var vesion = "";
        //ie 
        if (explorer.indexOf("MSIE") >= 0) {
            vesion = "IE";
            num = IEVesion();
            vesion = vesion + num;
        }
        //firefox 
        else if (explorer.indexOf("Firefox") >= 0) {
            vesion = "Firefox";
        }
        //Chrome
        else if (explorer.indexOf("Chrome") >= 0) {
            if (window.navigator.webkitPersistentStorage.toString() == "[object DeprecatedStorageQuota]") {
                vesion = "Chrome";
            } else {
                vesion = "360";
            }
        }
        //Opera
        else if (explorer.indexOf("Opera") >= 0) {
            vesion = "Opera";
        }
        //Safari
        else if (explorer.indexOf("Safari") >= 0) {
            vesion = "Safari";
        }
        
            alert(vesion);
     
    }); 


   //判断IE浏览器的版本
    function IEVesion() {
        var userAgent = window.navigator.userAgent.toLowerCase();
        var vesion_num = "";
        if (typeof window.attachEvent != "function" && ! -[1, ] == false) {
            vesion_num = "11";
        }
        else if ($.browser.msie && /msie 10\.0/i.test(userAgent)) {
            vesion_num = "10";
        }
        else if (typeof window.addEventListener == "function" && ! -[1, ] == false) {
            vesion_num = "9";
        }
        else if ($.browser.msie && /msie 8\.0/i.test(userAgent)) {
            vesion_num = "8";
        }
        else if ($.browser.msie && /msie 7\.0/i.test(userAgent)) {
            vesion_num = "7";
        }
        else if (!$.browser.msie8 && !$.browser.msie7 && $.browser.msie && /msie 6\.0/i.test(userAgent)) {
            vesion_num = "6";
        }
        return vesion_num;
    }

 

   

JS判断浏览器版本

标签:

原文地址:http://www.cnblogs.com/ywstrong/p/4887540.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!