zoukankan      html  css  js  c++  java
  • [js] js判断浏览器(转)

        (function($, window, document,undefined){
        if(!window.browser){
             
            var userAgent = navigator.userAgent.toLowerCase(),uaMatch;
            window.browser = {}
             
            /**
             * 判断是否为ie
             */
            function isIE(){
                return ("ActiveXObject" in window);
            }
            /**
             * 判断是否为谷歌浏览器
             */
            if(!uaMatch){
                uaMatch = userAgent.match(/chrome/([d.]+)/);
                if(uaMatch!=null){
                    window.browser['name'] = 'chrome';
                    window.browser['version'] = uaMatch[1];
                }
            }
            /**
             * 判断是否为火狐浏览器
             */
            if(!uaMatch){
                uaMatch = userAgent.match(/firefox/([d.]+)/);
                if(uaMatch!=null){
                    window.browser['name'] = 'firefox';
                    window.browser['version'] = uaMatch[1];
                }
            }
            /**
             * 判断是否为opera浏览器
             */
            if(!uaMatch){
                uaMatch = userAgent.match(/opera.([d.]+)/);
                if(uaMatch!=null){
                    window.browser['name'] = 'opera';
                    window.browser['version'] = uaMatch[1];
                }
            }
            /**
             * 判断是否为Safari浏览器
             */
            if(!uaMatch){
                uaMatch = userAgent.match(/safari/([d.]+)/);
                if(uaMatch!=null){
                    window.browser['name'] = 'safari';
                    window.browser['version'] = uaMatch[1];
                }
            }
            /**
             * 最后判断是否为IE
             */
            if(!uaMatch){
                if(userAgent.match(/msie ([d.]+)/)!=null){
                    uaMatch = userAgent.match(/msie ([d.]+)/);
                    window.browser['name'] = 'ie';
                    window.browser['version'] = uaMatch[1];
                }else{
                    /**
                     * IE10
                     */
                    if(isIE() && !!document.attachEvent && (function(){"use strict";return !this;}())){
                        window.browser['name'] = 'ie';
                        window.browser['version'] = '10';
                    }
                    /**
                     * IE11
                     */
                    if(isIE() && !document.attachEvent){
                        window.browser['name'] = 'ie';
                        window.browser['version'] = '11';
                    }
                }
            }
     
            /**
             * 注册判断方法
             */
            if(!$.isIE){
                $.extend({
                    isIE:function(){
                        return (window.browser.name == 'ie');
                    }
                });
            }
            if(!$.isChrome){
                $.extend({
                    isChrome:function(){
                        return (window.browser.name == 'chrome');
                    }
                });
            }
            if(!$.isFirefox){
                $.extend({
                    isFirefox:function(){
                        return (window.browser.name == 'firefox');
                    }
                });
            }
            if(!$.isOpera){
                $.extend({
                    isOpera:function(){
                        return (window.browser.name == 'opera');
                    }
                });
            }
            if(!$.isSafari){
                $.extend({
                    isSafari:function(){
                        return (window.browser.name == 'safari');
                    }
                });
            }
        }
    })(jQuery, window, document);
    alert(window.browser.name);
    console.log(window.browser);
    console.log($.isIE());
    console.log($.isChrome());
    console.log($.isFirefox());
  • 相关阅读:
    系统运行缓慢,CPU 100%,以及Full GC次数过多问题的排查思路
    微阵列杂交(Microarray Hybridization)
    autocad2018安装笔记
    java基础 大数类
    leetCode 23
    java语言基础 String类
    定时任务cronie
    Linux-vim使用操作大全
    计网期末复习题目
    操作系统期末复习题
  • 原文地址:https://www.cnblogs.com/newpanderking/p/4421531.html
Copyright © 2011-2022 走看看