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

 更新时间:2016年01月06日 08:48:12   投稿:lijiao  
这篇文章主要介绍了js判断当前页面在移动设备还是在PC端中打开的相关资料,需要的朋友可以参考下

本文实例讲解了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均做过测试,此代码可行,各设备判断均正确。

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

相关文章

  • bootstrap Table插件使用demo

    bootstrap Table插件使用demo

    本篇文章主要介绍了bootstrap Table插件使用demo,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-08-08
  • js 中获取制定的cook信息实现方法

    js 中获取制定的cook信息实现方法

    下面小编就为大家带来一篇js 中获取制定的cook信息实现方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-11-11
  • 使用jsonp实现跨域获取数据实例讲解

    使用jsonp实现跨域获取数据实例讲解

    这篇文章主要介绍了使用jsonp实现跨域获取数据实例讲解,需要的朋友可以参考下
    2016-12-12
  • javascript实现滚轮轮播图片

    javascript实现滚轮轮播图片

    这篇文章主要为大家详细介绍了javascript实现滚轮轮播图片,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-12-12
  • webpack打包js文件及部署的实现方法

    webpack打包js文件及部署的实现方法

    这篇文章主要介绍了webpack打包js文件的方法及webpack打包后的JS文件如何部署,需要的朋友可以参考下
    2017-12-12
  • 深入理解JavaScript系列(12) 变量对象(Variable Object)

    深入理解JavaScript系列(12) 变量对象(Variable Object)

    JavaScript编程的时候总避免不了声明函数和变量,以成功构建我们的系统,但是解释器是如何并且在什么地方去查找这些函数和变量呢
    2012-01-01
  • js css实现垂直方向自适应的三角提示菜单

    js css实现垂直方向自适应的三角提示菜单

    这篇文章主要为大家详细介绍了js css实现垂直方向自适应的三角提示菜单的相关资料,需要的朋友可以参考下
    2016-06-06
  • JavaScript数组操作函数汇总

    JavaScript数组操作函数汇总

    这篇文章主要针对JavaScript数组操作函数push,pop,join,shift,unshift,slice,splice,concat进行总结,感兴趣的小伙伴们可以参考一下
    2016-08-08
  • JS 数字转换研究总结

    JS 数字转换研究总结

    这篇文章主要介绍了JS 数字转换实现方法,需要的朋友可以参考下
    2013-12-12
  • 详解Bootstrap按钮

    详解Bootstrap按钮

    本文给大家介绍bootstrap按钮相关知识,包括按钮大小、按钮状态、按钮标签相关样式定义,对bootstrap按钮相关知识感兴趣的朋友一起学习吧
    2016-01-01

最新评论