zoukankan      html  css  js  c++  java
  • 使用js实现移动设备访问跳转到指定目录

    最近最项目的时候总会同时做pc站点跟手机站点,当手机访问的时候默认是看到pc站点的,需要在url上加上/mobile才能正常访问,这段代码是我同事分享给我的,还是蛮实用的.

    CODE

    function ckMobile() {
        var browser = {
            versions: function () {
                var u = navigator.userAgent, app = navigator.appVersion;
                return {
                    trident: u.indexOf('Trident') > -1, //IE内核                
                    presto: u.indexOf('Presto') > -1, //opera内核                
                    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/), //ios终端                
                    android: u.indexOf('Android') > -1 || u.indexOf('Linux') > -1, //android终端或者uc浏览器               
                    iPhone: u.indexOf('iPhone') > -1 || u.indexOf('Mac') > -1, //是否为iPhone或者QQHD浏览器                
                    iPad: u.indexOf('iPad') > -1, //是否iPad                
                    webApp: u.indexOf('Safari') == -1 //是否web应该程序,没有头部与底部            
                };
            } ()
        }
    
        if (browser.versions.mobile || browser.versions.iPhone) {
            if (!browser.versions.iPad || (document.body.clientWidth < 450)) {
                return true;
            }
        }
    }
    
    
    function ckGoogleBrowser() {
        var Sys = {};
        var ua = navigator.userAgent.toLowerCase();
        var s;
        (s = ua.match(/msie ([d.]+)/)) ? Sys.ie = s[1] :
        (s = ua.match(/firefox/([d.]+)/)) ? Sys.firefox = s[1] :
        (s = ua.match(/chrome/([d.]+)/)) ? Sys.chrome = s[1] :
        (s = ua.match(/opera.([d.]+)/)) ? Sys.opera = s[1] :
        (s = ua.match(/version/([d.]+).*safari/)) ? Sys.safari = s[1] : 0;
        if (Sys.chrome != null || Sys.opera != null || Sys.firefox != null) { return true; }
       
    }
    
    
    function CheckBrowser() {
        if (!ckGoogleBrowser()) {
            if (ckMobile()) {
                location.href = "/mobile/";
            }
        }
    }
    
    
    CheckBrowser();
    

      

    备注:在站点起始页引用即可.

  • 相关阅读:
    格式化输出数字
    传教士经验
    集合
    替换
    连接
    填充
    取值
    分割
    创建日历和日期列表
    常用日期格式
  • 原文地址:https://www.cnblogs.com/Chendaqian/p/3437692.html
Copyright © 2011-2022 走看看