«

js根据手机客户端浏览器类型,判断跳转官网/手机网站多个实例代码

时间:2024-3-2 01:32     作者:韩俊     分类: Javascript


实例一、比较简单粗暴缺少点类型判断

<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>

实例二、代码工整,很多的函数都基于这个增加的功能

<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(/ucwebd+.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.href = "http://wap.xiu.com/?from=pc";
            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.href = "http://wap.xiu.com/?from=pc";
                return;
            }
            if (browser.versions.Symbian) {
                win.location.href = "http://wap.xiu.com/";
            }
        }
    }
})(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(/ucwebd+.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>

标签: javascript

热门推荐