js判断当前页面在移动设备还是在PC端中打开


Posted in Javascript onJanuary 06, 2016

本文实例讲解了js判断当前页面在移动设备还是在PC端中打开的详细代码,分享给大家供大家参考,具体内容如下

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.*/), //是否为移动终端
                  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, //是否为iPhone或者QQHD浏览器
                  iPad: u.indexOf('iPad') > -1, //是否iPad
                  webApp: u.indexOf('Safari') == -1 //是否web应该程序,没有头部与底部
                };
              }(),
              language: (navigator.browserLanguage || navigator.language).toLowerCase()
            }            
            if (browser.versions.mobile) {//判断是否是移动设备打开。browser代码在下面
                var ua = navigator.userAgent.toLowerCase();//获取判断用的对象
                if (ua.match(/MicroMessenger/i) == "micromessenger") {
                    //在微信中打开
                   setInterval(WeixinJSBridge.call('closeWindow'),2000);
                }
                if (ua.match(/WeiBo/i) == "weibo") {
                    //在新浪微博客户端打开
                }
                if (ua.match(/QQ/i) == "qq") {
                    //在QQ空间打开
                }
                if (browser.versions.ios) {
                    //是否在IOS浏览器打开
                } 
                if(browser.versions.android){
                    //是否在安卓浏览器打开
                }
            } else {
                //否则就是PC浏览器打开
                window.close();
            }

代码二:js判断用户的浏览设备是移动设备还是PC

最近做的一个网站页面中需要根据用户的访问设备的不同来显示不同的页面样式,主要是判断移动设备还是电脑浏览器访问的。

下面给出js判断处理代码,以作参考。

<script type="text/javascript">
    function browserRedirect() {
      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";
      document.writeln("您的浏览设备为:");
      if (bIsIpad || bIsIphoneOs || bIsMidp || bIsUc7 || bIsUc || bIsAndroid || bIsCE || bIsWM) {
        document.writeln("phone");
      } else {
        document.writeln("pc");
      }
    }

    browserRedirect();
  </script>

我用电脑上的浏览器,android设备,iphone,ipad均做过测试,此代码可行,各设备判断均正确。

以上就是本文的全部内容,希望对大家的学习有所帮助。

Javascript 相关文章推荐
js停止输出代码
Jul 20 Javascript
JS无限极树形菜单,json格式、数组格式通用示例
Jul 30 Javascript
JS中如何判断传过来的JSON数据中是否存在某字段
Aug 18 Javascript
js动态切换图片的方法
Jan 20 Javascript
Javascript编程中几种继承方式比较分析
Nov 28 Javascript
jQuery+jsp实现省市县三级联动效果(附源码)
Dec 03 Javascript
只要1K 纯JS脚本送你一朵3D红色玫瑰
Aug 09 Javascript
jQuery表单插件ajaxForm实例详解
Jan 17 Javascript
webuploader分片上传的实现代码(前后端分离)
Sep 10 Javascript
Vue 中使用 typescript的方法详解
Feb 17 Javascript
jQuery实现滑动开关效果
Aug 02 jQuery
vue3.0生命周期的示例代码
Sep 24 Javascript
js判断当前页面用什么浏览器打开的方法
Jan 06 #Javascript
javascript中闭包(Closure)详解
Jan 06 #Javascript
果断收藏9个Javascript代码高亮脚本
Jan 06 #Javascript
基于HTML+CSS,jQuery编写的简易计算器后续(添加了键盘监听)
Jan 05 #Javascript
JavaScript实现简单的tab选项卡切换
Jan 05 #Javascript
javascript实现简单的全选和反选功能
Jan 05 #Javascript
Javascript原型链的原理详解
Jan 05 #Javascript
You might like
PHP使用PHPExcel实现批量上传到数据库的方法
2017/06/08 PHP
PHP二维数组实现去除重复项的方法【保留各个键值】
2017/12/21 PHP
ThinkPHP5分页paginate代码实例解析
2020/11/10 PHP
身份证号码前六位所代表的省,市,区, 以及地区编码下载
2007/04/12 Javascript
javascript 客户端验证上传图片的大小(兼容IE和火狐)
2009/08/15 Javascript
div移动 输入框不能输入的问题
2009/11/19 Javascript
使用jQuery向asp.net Mvc传递复杂json数据-ModelBinder篇
2010/05/07 Javascript
jQuery在html有效在jsp无效的原因及解决方法
2013/08/02 Javascript
jquery实现可横向和竖向展开的动态下滑菜单效果
2015/08/24 Javascript
javascript中不易分清的slice,splice和split三个函数
2016/03/29 Javascript
微信小程序 wx.request(object) API详解及实例代码
2016/09/30 Javascript
详解Angular 4.x 动态创建组件
2017/04/25 Javascript
详解使用vue实现tab 切换操作
2017/07/03 Javascript
JS实现将二维数组转为json格式字符串操作示例
2018/07/12 Javascript
用原生JS实现爱奇艺首页导航栏代码实例
2019/09/19 Javascript
原生js实现拖拽移动与缩放效果
2020/08/24 Javascript
Javascript 模拟mvc实现点餐程序案例详解
2020/12/24 Javascript
Python 初始化多维数组代码
2008/09/06 Python
Python 两个列表的差集、并集和交集实现代码
2016/09/21 Python
浅谈Python 的枚举 Enum
2017/06/12 Python
Python使用回溯法子集树模板解决迷宫问题示例
2017/09/01 Python
Python爬虫天气预报实例详解(小白入门)
2018/01/24 Python
python使用requests模块实现爬取电影天堂最新电影信息
2019/04/03 Python
Django 批量插入数据的实现方法
2020/01/12 Python
Python栈的实现方法示例【列表、单链表】
2020/02/22 Python
国际经济贸易专业推荐信
2013/11/06 职场文书
副总经理工作职责
2013/11/28 职场文书
竞争上岗演讲稿
2014/01/05 职场文书
护理个人求职信范文
2014/01/08 职场文书
经验丰富大学生村干部自我鉴定
2014/01/22 职场文书
家长会主持词开场白
2014/03/18 职场文书
大学生村官考核材料
2014/05/23 职场文书
机关党建工作汇报材料
2014/08/20 职场文书
乡镇四风对照检查材料
2014/08/31 职场文书
2014年仓库保管员工作总结
2014/12/03 职场文书
邀请函模板
2015/02/02 职场文书