js根據(jù)手機客戶端瀏覽器類型,判斷跳轉官網(wǎng)/手機網(wǎng)站多個實例代碼

字號:


    這篇文章主要介紹了js根據(jù)手機客戶端瀏覽器類型,判斷跳轉官網(wǎng)/手機網(wǎng)站多個實例代碼,需要的朋友可以參考下
    實例一、比較簡單粗暴缺少點類型判斷
    <script type="text/javascript"> 
            var sUserAgent = navigator.userAgent.toLowerCase(); 
            var bIsIpad = sUserAgent.match(/ipad/i) == "ipad"; 
            var bIsIphoneOs = sUserAgent.match(/iphone os/i) == "iphone os"; 
            var bIsMidp = sUserAgent.match(/midp/i) == "midp"; 
            var bIsUc7 = sUserAgent.match(/rv:1.2.3.4/i) == "rv:1.2.3.4"; 
            var bIsUc = sUserAgent.match(/ucweb/i) == "ucweb"; 
            var bIsAndroid = sUserAgent.match(/android/i) == "android"; 
            var bIsCE = sUserAgent.match(/windows ce/i) == "windows ce"; 
            var bIsWM = sUserAgent.match(/windows mobile/i) == "windows mobile"; 
            if (bIsIpad || bIsIphoneOs || bIsMidp || bIsUc7 || bIsUc || bIsAndroid || bIsCE || bIsWM ){ 
              window.location.href="3g.php";
            } 
    </script>
    實例二、代碼工整,很多的函數(shù)都基于這個增加的功能
    <script>
        var pc_style = ""
        var browser = {
        versions: function () {
        var u = navigator.userAgent, app = navigator.appVersion;
        return {
        trident: u.indexOf('Trident') > -1,
        presto: u.indexOf('Presto') > -1,
        webKit: u.indexOf('AppleWebKit') > -1,
        gecko: u.indexOf('Gecko') > -1 && u.indexOf('KHTML') == -1,
        mobile: !!u.match(/AppleWebKit.*Mobile.*/) || !!u.match(/AppleWebKit/) && u.indexOf('QIHU') && u.indexOf('QIHU') > -1 && u.indexOf('Chrome') < 0,
        ios: !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/),
        android: u.indexOf('Android') > -1 || u.indexOf('Linux') > -1,
        iPhone: u.indexOf('iPhone') > -1 || u.indexOf('Mac') > -1,
        iPad: u.indexOf('iPad') > -1,
        webApp: u.indexOf('Safari') == -1,
        ua: u
        };
        }(),
        language: (navigator.browserLanguage || navigator.language).toLowerCase()
        }
        if (browser.versions.mobile && !browser.versions.iPad) {
        this.location = "此處輸入跳轉微站首頁地址";
        }
    </script>
    實例三、增加了一些功能
    <!--智能手機判斷開始-->
    <!--
         <script type = "text/javascript" language = "javascript" >
        Function.prototype.bind = function (bindObj, args) {
        var _self = this;
        return function () {
            return _self.apply(bindObj, [].concat(args))
        }
    };
    function $(id) {
        return "string" == typeof id ? document.getElementById(id) : id;
    };
    var browser = {
        versions : function () {
            var u = navigator.userAgent,
            app = navigator.appVersion;
            return {
                trident : u.indexOf('Trident') > -1,
                presto : u.indexOf('Presto') > -1,
                webKit : u.indexOf('AppleWebKit') > -1,
                gecko : u.indexOf('Gecko') > -1 && u.indexOf('KHTML') == -1,
                mobile : !!u.match(/AppleWebKit.*Mobile.*/) || !!u.match(/AppleWebKit/),
                ios : !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/),
                android : u.indexOf('Android') > -1 || u.indexOf('Linux') > -1,
                iPhone : u.indexOf('iPhone') > -1 || u.indexOf('Mac') > -1,
                iPad : u.indexOf('iPad') > -1,
                webApp : u.indexOf('Safari') == -1,
                QQbrw : u.indexOf('MQQBrowser') > -1,
                ucLowEnd : u.indexOf('UCWEB7.') > -1,
                ucSpecial : u.indexOf('rv:1.2.3.4') > -1,
                ucweb : function () {
                    try {
                        return parseFloat(u.match(/ucweb\d+\.\d+/gi).toString().match(/\d+\.\d+/).toString()) >= 8.2
                    } catch (e) {
                        if (u.indexOf('UC') > -1) {
                            return true;
                        } else {
                            return false;
                        }
                    }
                }
                (),
                Symbian : u.indexOf('Symbian') > -1,
                ucSB : u.indexOf('Firefox/1.') > -1
            };
        }
        ()
    }
    var _gaq = _gaq || [];
    (function (win, browser, undefined) {
        var rf = document.referrer;
        if (rf === "" || rf.toLocaleLowerCase().indexOf(".xiu.com") === -1) {
            var defaultJumpDomain = "";
            if (defaultJumpDomain == "www") {
                return;
            }
            if (defaultJumpDomain == "m") {
                window.location.;
                return;
            }
            if (screen == undefined || screen.width < 810) {
                if (browser.versions.iPad == true) {
                    return;
                }
                if (browser.versions.webKit == true || browser.versions.mobile == true || browser.versions.ios == true || browser.versions.iPhone == true || browser.versions.ucweb == true || browser.versions.ucSpecial == true) {
                    win.location.;
                    return;
                }
                if (browser.versions.Symbian) {
                    win.location.;
                }
            }
        }
    })(window, browser);
     </script>
    -->
    <!--智能手機判斷結束-->
    實例四、簡潔腳本之家推薦使用,如果您有更好的代碼可以分享
    <script type="text/javascript">
    var browser = {
        versions : function () {
            var u = navigator.userAgent,
            app = navigator.appVersion;
            return {
                trident : u.indexOf('Trident') > -1,
                presto : u.indexOf('Presto') > -1,
                webKit : u.indexOf('AppleWebKit') > -1,
                gecko : u.indexOf('Gecko') > -1 && u.indexOf('KHTML') == -1,
                mobile : !!u.match(/AppleWebKit.*Mobile.*/) || !!u.match(/AppleWebKit/),
                ios : !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/),
                android : u.indexOf('Android') > -1 || u.indexOf('Linux') > -1,
                iPhone : u.indexOf('iPhone') > -1 || u.indexOf('Mac') > -1,
                iPad : u.indexOf('iPad') > -1,
                webApp : u.indexOf('Safari') == -1,
                QQbrw : u.indexOf('MQQBrowser') > -1,
                weiXin : u.indexOf('MicroMessenger') > -1,
                ucLowEnd : u.indexOf('UCWEB7.') > -1,
                ucSpecial : u.indexOf('rv:1.2.3.4') > -1,
                ucweb : function () {
                    try {
                        return parseFloat(u.match(/ucweb\d+\.\d+/gi).toString().match(/\d+\.\d+/).toString()) >= 8.2
                    } catch (e) {
                        if (u.indexOf('UC') > -1) {
                            return true;
                        } else {
                            return false;
                        }
                    }
                }
                (),
                Symbian : u.indexOf('Symbian') > -1,
                ucSB : u.indexOf('Firefox/1.') > -1
            };
        }
        (),
        liulanqi : navigator.userAgent
    }
    if (browser.versions.QQbrw){
    document.write("qq瀏覽器");
    }else
    {
    document.write("其它瀏覽器"+browser.liulanqi);
    }
    </script>