热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

javascript——处理(获取)浏览器版本、操作系统

javascript——处理(获取)浏览器版本、操作系统***CreatedbyAdministratoron15-1-12.*functionBroswer

Javascript——处理(获取)浏览器版本、操作系统

/**
 * Created by Administrator on 15-1-12.
 */
function BroswerUtil() {
}

BroswerUtil = {
    //检测浏览器版本
    getBrowserVersion: function () {
        var agent = navigator.userAgent.toLowerCase();
        var arr = [];
        var Browser = "";
        var Bversion = "";
        var verinNum = "";
        //IE
        if (agent.indexOf("msie") > 0) {
            var regStr_ie = /msie [\d.]+;/gi;
            Browser = "IE";
            Bversion = "" + agent.match(regStr_ie)
        }
        //firefox
        else if (agent.indexOf("firefox") > 0) {
            var regStr_ff = /firefox\/[\d.]+/gi;
            Browser = "firefox";
            Bversion = "" + agent.match(regStr_ff);
        }
        //Chrome
        else if (agent.indexOf("chrome") > 0) {
            var regStr_chrome = /chrome\/[\d.]+/gi;
            Browser = "chrome";
            Bversion = "" + agent.match(regStr_chrome);
        }
        //Safari
        else if (agent.indexOf("safari") > 0 && agent.indexOf

("chrome") <0) {
            var regStr_saf = /version\/[\d.]+/gi;
            Browser = "safari";
            Bversion = "" + agent.match(regStr_saf);
        }
        //Opera
        else if (agent.indexOf("opera") >= 0) {
            var regStr_opera = /version\/[\d.]+/gi;
            Browser = "opera";
            Bversion = "" + agent.match(regStr_opera);
        } else {
            var browser = navigator.appName;
            if (browser == "Netscape") {
                var version = agent.split(";");
                var trim_Version = version[7].replace(/[ ]/g, 

"");
                var rvStr = trim_Version.match(/

[\d\.]/g).toString();
                var rv = rvStr.replace(/[,]/g, "");
                Bversion = rv;
                Browser = "IE"
            }
        }
        verinNum = (Bversion + "").replace(/[^0-9.]/ig, "");
        arr.push(Browser);
        arr.push(verinNum);
        return arr;
    },
    //检测是否是XX浏览器
    WB: (function () {
        var UserAgent = navigator.userAgent.toLowerCase();
        return {
            isIE6: /msie 6.0/.test(UserAgent), // IE6
            isIE7: /msie 7.0/.test(UserAgent), // IE7
            isIE8: /msie 8.0/.test(UserAgent), // IE8
            isIE9: /msie 9.0/.test(UserAgent), // IE9
            isIE10: /msie 10.0/.test(UserAgent), // IE10
            isIE11: /msie 11.0/.test(UserAgent), // IE11
            isLB: /lbbrowser/.test(UserAgent), // 猎豹浏览器
            isUc: /ucweb/.test(UserAgent), // UC浏览器
            is360: /360se/.test(UserAgent), // 360浏览器
            isBaidu: /bidubrowser/.test(UserAgent), // 百度浏览器
            isSougou: /metasr/.test(UserAgent), // 搜狗浏览器
            isChrome: /chrome/.test(UserAgent.substr(-33, 6)), // 

Chrome浏览器
            isFirefox: /firefox/.test(UserAgent), // 火狐浏览器
            isOpera: /opera/.test(UserAgent),  // Opera浏览器
            isSafire: /safari/.test(UserAgent) && !/chrome/.test

(UserAgent), // safire浏览器
            isQQ: /qqbrowser/.test(UserAgent)//qq浏览器
        };
    })(),
    //检测当前操作系统
    CurrentSystem: (function () {
        var system = {
            win: false,
            mac: false,
            xll: false,
            iphone: false,
            ipoad: false,
            ipad: false,
            ios: false,
            android: false,
            nokiaN: false,
            winMobile: false,
            wii: false,
            ps: false
        };

        var ua = navigator.userAgent;
        // 检测平台
        var p = navigator.platform;
        system.win = p.indexOf(\'Win\') == 0;
        system.mac = p.indexOf(\'Mac\') == 0;
        system.xll = (p.indexOf(\'Xll\') == 0 || p.indexOf(\'Linux\') 

== 0);

        // 检测Windows操作系统
        if (system.win) {
            if (/Win(?:dows )?([^do]{2})\s?(\d+\.\d+)?/.test(ua)) 

{
                if (RegExp[\'$1\'] == \'NT\') {
                    switch (RegExp[\'$2\']) {
                        case \'5.0\':
                            system.win = \'2000\';
                            break;
                        case \'5.1\':
                            system.win = \'XP\';
                            break;
                        case \'6.0\':
                            system.win = \'Vista\';
                            break;
                        case \'6.1\':
                            system.win = \'7\';
                            break;
                        case \'6.2\':
                            system.win = \'8\';
                            break;
                        default:
                            system.win = \'NT\';
                            break;
                    }
                } else if (RegExp[\'$1\'] == \'9x\') {
                    system.win = \'ME\';
                } else {
                    system.win = RegExp[\'$1\'];
                }
            }
        }

        // 移动设备
        system.iphOne= ua.indexOf(\'iPhone\') > -1;
        system.ipod = ua.indexOf(\'iPod\') > -1;
        system.ipad = ua.indexOf(\'iPad\') > -1;
        system.nokiaN = ua.indexOf(\'nokiaN\') > -1;

        // windows mobile
        if (system.win == \'CE\') {
            system.winMobile = system.win;
        } else if (system.win == \'Ph\') {
            if (/Windows Phone OS (\d+.\d)/i.test(ua)) {
                system.win = \'Phone\';
                system.winMobile = parseFloat(RegExp[\'$1\']);
            }
        }

        // 检测IOS版本
        if (system.mac && ua.indexOf(\'Mobile\') > -1) {
            if (/CPU (?:iPhone )?OS (\d+_\d+)/i.test(ua)) {
                system.ios = parseFloat(RegExp[\'$1\'].replace(\'_\', 

\'.\'));
            } else {
                system.ios = 2;        // 不能真正检测出来,所以

只能猜测
            }
        }

        // 检测Android版本
        if (/Android (\d+\.\d+)/i.test(ua)) {
            system.android = parseFloat(RegExp[\'$1\']);
        }

        // 游戏系统
        system.wii = ua.indexOf(\'Wii\') > -1;
        system.ps = /PlayStation/i.test(ua);

        return {
            system: system
        }
    })()
}

 


推荐阅读
author-avatar
彤彤柯安_839
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有