• js判断是否为手机端访问


    随着移动端越来越重要,pc和移动端网站后台系统可能是同一个,登录或者某个特定时期需要根据不同访问来源,跳转不同页面或者做不同的处理;

    这时我们就需要js的 navigator 对象;

    我们先了解一下navigator 对象相关的属性:

    <!DOCTYPE html>
    <html>
    <head>
    <meta charset="utf-8">
    <title>JS的navigator对象</title>
    </head>
    <body>  
    <div id="txt"></div>
    <script>
    var txt = "<p>浏览器代号: " + navigator.appCodeName + "</p>";
    txt+= "<p>浏览器名称: " + navigator.appName + "</p>";
    txt+= "<p>浏览器版本: " + navigator.appVersion + "</p>";
    txt+= "<p>启用Cookies: " + navigator.cookieEnabled + "</p>";
    txt+= "<p>硬件平台: " + navigator.platform + "</p>";
    txt+= "<p>用户代理: " + navigator.userAgent + "</p>";
    txt+= "<p>用户代理语言: " + navigator.systemLanguage + "</p>";
    document.getElementById("txt").innerHTML=txt;
    </script>
    </body>
    </html>
    

    我们可以用其中的用户代理进行判断:userAgent

    示例一:

    <script type="text/javascript">
    
    var ua = navigator.userAgent;
    
    var ipad = ua.match(/(iPad).*OSs([d_]+)/),
    
    isIphone =!ipad && ua.match(/(iPhonesOS)s([d_]+)/),
    
    isAndroid = ua.match(/(Android)s+([d.]+)/),
    
    isMobile = isIphone || isAndroid;
    
    //判断
    
    if(isMobile){
    
    }else{
    
    }
    
    </script>

    示例二:

    function check() { 
      var userAgentInfo=navigator.userAgent; 
      var Agents =new Array("Android","iPhone","SymbianOS","Windows Phone","iPad","iPod"); 
      var flag=true; 
      for(var v=0;v<Agents.length;v++) { 
         if(userAgentInfo.indexOf(Agents[v])>0) { 
           flag=false; 
           break; 
         } 
       } 
       return flag; 
      }

    示例三:

    function() {
        var sUserAgent = navigator.userAgent;
        if (sUserAgent.indexOf('Android') > -1 || sUserAgent.indexOf('iPhone') > -1 || sUserAgent.indexOf('iPad') > -1 || sUserAgent.indexOf('iPod') > -1 || sUserAgent.indexOf('Symbian') > -1) {
            location.href = '要跳转的手机网址';
        } else {}
    }

    示例四:

    function IsPC() {
        var userAgentInfo = navigator.userAgent;
        var Agents = ["Android", "iPhone",
                    "SymbianOS", "Windows Phone",
                    "iPad", "iPod"];
        var flag = true;
        for (var v = 0; v < Agents.length; v++) {
            if (userAgentInfo.indexOf(Agents[v]) > 0) {
                flag = false;
                break;
            }
        }
        return flag;
    }
     
    var flag = IsPC(); //true为PC端,false为手机端
  • 相关阅读:
    微信公众号开发 该公众号提供的服务出现故障,请稍后再试
    docker 搭建以太坊私有链搭建
    docker /var/lib/docker/aufs/mnt 目录满了,全是垃圾数据
    golang 如何将imagemagick 和golang 打包到docker 环境中
    CSharpGL(2)设计和使用场景元素及常用接口
    CSharpGL(1)从最简单的例子开始使用CSharpGL
    CSharpGL(0)一个易学易用的C#版OpenGL
    Opengl中矩阵和perspective/ortho的相互转换
    C#+OpenGL+FreeType显示3D文字(3)
    C#+OpenGL+FreeType显示3D文字(2)
  • 原文地址:https://www.cnblogs.com/zktww/p/11175436.html
Copyright © 2020-2023  润新知