判断微信,android,ios,webkit,qq,sogou等浏览器信息

来源:赵克立博客 分类: 前端开发 标签:requirejs发布时间:2018-12-16 14:42:37最后更新:2018-12-16 14:42:37浏览:1377
版权声明:
本文为博主原创文章,转载请声明原文链接...谢谢。o_0。
更新时间:
2018-12-16 14:42:37
温馨提示:
学无止境,技术类文章有它的时效性,请留意文章更新时间,如发现内容有误请留言指出,防止别人"踩坑",我会及时更新文章

一个简单的判断浏览器信息的js脚本,支持amd加载

(function(factory) {
    if (typeof define == 'function' && define.amd) {
        define(factory);
    } else {
        window.navobj = factory();
    }
})(function() {
    var e = navigator.userAgent ? navigator.userAgent : '';
    var n = {
        isAndroid: function() {
            return /android/i.test(e)
        },
        isIOS: function() {
            return /(iPhone|iPod|iPad)/.test(e)
        },
        isWinPhone: function() {
            return /Windows Phone ([\d.]+)/.test(e)
        },
        iOSVersion: function() {
            var t = /OS (\d+)_(\d+)/.exec(e);
            return t ? [Number(t[1]), Number(t[2])] : []
        },
        appleWebkitVersion: function() {
            var t = e.match(/ applewebkit\/([0-9.]+)/i);
            return t ? t[1].split(".").map(parseFloat) : []
        },
        baiduBoxVersion: function() {
            if (!this.isBaiduBox())
                return 0;
            var t, n = /([\d+.]+)_(?:diordna|enohpi)_/i,
                i = /baiduboxapp\/([\d+.]+)/i;
            return n.test(e) ? t = e.match(n)[1].split(".").reverse() : i.test(e) && (t = e.match(i)[1].split(".")), t ? t.map(parseFloat) : []
        },
        secrVersion: function() {
            if (!this.isSearchCraft())
                return 0;
            var t = e.match(/ SearchCraft\/([0-9]+_)?([0-9.]+)/i),
                n = (/(iPhone|iPod|iPad)/.test(e), t[2].split("."));
            return n ? n.map(parseFloat) : []
        },
        getChromeVersion: function() {
            if (!this.isChromeDesktop() && !this.isChromeMobile())
                return 0;
            var t = e.match(/ Chrome\/([0-9]+_)?([0-9.]+)/i);
            return t && t[2] ? t[2].split(".").map(parseFloat) : []
        },
        androidVersion: function() {
            var t = e.match(/Android ([0-9.]+);/);
            return t ? t[1].split(".").map(parseFloat) : []
        },
        isBaiduBox: function() {
            return /baiduboxapp/.test(e)
        },
        isBaiduBoxLite: function() {
            return /lite baiduboxapp/.test(e)
        },
        isQQ: function() {
            return /QQBrowser/.test(e)
        },
        isQQApp: function() {
            return /QQ\/[0-9]+/.test(e)
        },
        isWeixinApp: function() {
            return /MicroMessenger/.test(e)
        },
        isQQBrowser: function() {
            return /QQBrowser/.test(e) && !(/QQ\//.test(e) || /MicroMessenger/.test(e))
        },
        isBaiduBrowser: function() {
            return /baidubrowser/.test(e)
        },
        isSearchCraft: function() {
            return /SearchCraft/i.test(e)
        },
        isUC: function() {
            return /UCBrowser/.test(e)
        },
        isChromeDesktop: function() {
            return /Chrome\//.test(e)
        },
        isChromeMobile: function() {
            return /Chrome\/(\S*) Mobile/.test(e)
        },
        isCriOS: function() {
            return /CriOS/.test(e)
        },
        isSogouMobile: function() {
            return /SogouMobileBrowser/.test(e)
        },
        isMiuiBrowser: function() {
            return /MiuiBrowser\/(\S*)/.test(e)
        },
        isHUAWEIBrowser: function() {
            return /HUAWEI/i.test(e) && !/baiduboxapp/.test(e)
        },
        isMZBrowser: function() {
            return /MZBrowser/i.test(e)
        },
        isWKWebview: function() {
            var e = n.appleWebkitVersion();
            return n.isIOS() && e[0] && e[0] > 600
        },
        isUIWebview: function() {
            var e = n.appleWebkitVersion();
            return n.isIOS() && e[0] && e[0] <= 600
        }
    };
    return n;
});



微信号:kelicom QQ群:215861553 紧急求助须知
Win32/PHP/JS/Android/Python