js判断浏览器的环境(pc端,移动端,还是微信浏览器)

今天突然看到一段很好的代码,分享给大家,顺便也给自己留个笔记,js判断浏览器的环境具体如下:

方法一:

 // 判断浏览器函数
  function isMobile(){
    if(window.navigator.userAgent.match(/(phone|pad|pod|iPhone|iPod|ios|iPad|Android|Mobile|BlackBerry|IEMobile|MQQBrowser|JUC|Fennec|wOSBrowser|BrowserNG|WebOS|Symbian|Windows Phone)/i)) {
      return true; // 移动端
    }else{
      return false; // PC端
    }
  }

方法二:这个方法摘自:im.qq.com

var os = function() {
   var ua = navigator.userAgent,
   isWindowsPhone = /(?:Windows Phone)/.test(ua),
   isSymbian = /(?:SymbianOS)/.test(ua) || isWindowsPhone,
   isAndroid = /(?:Android)/.test(ua),
   isFireFox = /(?:Firefox)/.test(ua),
   isChrome = /(?:Chrome|CriOS)/.test(ua),
   isTablet = /(?:iPad|PlayBook)/.test(ua) || (isAndroid && !/(?:Mobile)/.test(ua)) || (isFireFox && /(?:Tablet)/.test(ua)),
   isPhone = /(?:iPhone)/.test(ua) && !isTablet,
   isPc = !isPhone && !isAndroid && !isSymbian;
   return {
     isTablet: isTablet,
     isPhone: isPhone,
     isAndroid : isAndroid,
     isPc : isPc
   };
}(); 

// 使用方法
if(os.isAndroid || os.isPhone){
alert("-----");
}

判断是否为微信客户端:

 var isWechart = function () {
    var rst = true
    if(window.navigator.userAgent.match(/(phone|pad|pod|iPhone|iPod|ios|iPad|Android|Mobile|BlackBerry|IEMobile|MQQBrowser|JUC|Fennec|wOSBrowser|BrowserNG|WebOS|Symbian|Windows Phone)/i)){
      var ua = navigator.userAgent.toLowerCase();
      if (!(ua.match(/MicroMessenger/i) == "micromessenger")) {
        rst = false;
      }
    }else {
      rst = false;
    }
    return rst;
  }

判断微信浏览器是PC端还是手机端,以及手机端是微信浏览器还是非微信浏览器

 //平台、设备和操作系统
     var system = {
       win: false,
       mac: false,
       xll: false,
       ipad: false
     };
     //检测平台
     var p = navigator.platform;
     system.win = p.indexOf("Win") == 0;
     system.mac = p.indexOf("Mac") == 0;
     system.x11 = (p == "X11") || (p.indexOf("Linux") == 0);
     system.ipad = (navigator.userAgent.match(/iPad/i) != null) ? true : false;
     //跳转语句,如果是手机访问就自动跳转到wap.baidu.com页面
     if (system.win || system.mac || system.xll || system.ipad) {
       alert("在PC端上打开的");
     } else {
       var ua = navigator.userAgent.toLowerCase();
       if(ua.match(/MicroMessenger/i)=="micromessenger") {
         alert("在手机端微信上打开的");
       } else {
         alert("在手机上非微信上打开的");
       }
     }

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

(0)

相关推荐

  • PHP判断是手机端还是PC端 PHP判断是否是微信浏览器

    本文实例为大家分享了PHP判断的两个实例,一是PHP判断是手机端还是PC端,二是PHP判断是否是微信浏览器,供大家参考,具体内容如下 1.判断是否是手机端 function isMobile() { // 如果有HTTP_X_WAP_PROFILE则一定是移动设备 if (isset($_SERVER['HTTP_X_WAP_PROFILE'])) { return true; } // 如果via信息含有wap则一定是移动设备,部分服务商会屏蔽该信息 if (isset($_SERVER['H

  • 详解JS判断页面是在手机端还是在PC端打开的方法

    我们想要的效果是pc文件和mobile文件统一入口,适配不同的设备. 先看看项目的目录: 在index.html里面配置js控制选择那一个文件夹下的文件就可以了. 我们要利用:Navigator 对象,Navigator 对象包含有关浏览器的信息. index.html很简单,直接上码吧: <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <meta name="vi

  • thinkphp判断访客为手机端或PC端的方法

    本文实例讲述了thinkphp判断访客为手机端或PC端的方法.分享给大家供大家参考.具体实现方法如下: 一.问题: 近日准备给自己的网站做一个小升级,让用户在手机二维码扫描的时候显示适合手机端来展示的模版[我用的是ThinkPHP3.0],代码是参考别人的 二.实现方法: 这里先说下大概的一个思路 简单两步: 统版本号和浏览器以及它的版本号(贴出的代码中数组中只有移动端信息,因此后面只需判断是否为数组中的某一个值即可). 根据数组中的值来判断访客是否为手机.pad.之类的移动端,如果是的话就规定

  • js判断设备是否为PC并调整图片大小

    复制代码 代码如下: <html> <head> <script type="text/javascript"> /* 判断设备是否为PC */ function isPC() { var userAgentInfo = navigator.userAgent; var Agents = new Array("Android", "iPhone", "SymbianOS","Win

  • js判断手机访问或者PC的几个例子(常用于手机跳转)

    例子一 <script> 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 = sUser

  • PHP基于curl实现模拟微信浏览器打开微信链接的方法示例

    本文实例讲述了PHP基于curl实现模拟微信浏览器打开微信链接的方法.分享给大家供大家参考,具体如下: 网络上没有可以直接打开微信的浏览器 但是我们可以模拟浏览器 微信浏览器的HTTP_USER_AGENT 在iPhone下,返回 Mozilla/5.0 (iPhone; CPU iPhone OS 5_1 like Mac OS X) AppleWebKit/534.46 (KHTML, like Gecko) Mobile/9B176 MicroMessenger/4.3.2 在Androi

  • js判断浏览器的环境(pc端,移动端,还是微信浏览器)

    今天突然看到一段很好的代码,分享给大家,顺便也给自己留个笔记,js判断浏览器的环境具体如下: 方法一: // 判断浏览器函数 function isMobile(){ if(window.navigator.userAgent.match(/(phone|pad|pod|iPhone|iPod|ios|iPad|Android|Mobile|BlackBerry|IEMobile|MQQBrowser|JUC|Fennec|wOSBrowser|BrowserNG|WebOS|Symbian|W

  • js判断手机和pc端选择不同执行事件的方法

    本文实例讲述了js判断手机和pc端选择不同执行事件的方法.分享给大家供大家参考.具体如下: 判断是否为手机: function isMobile(){ var sUserAgent= navigator.userAgent.toLowerCase(), bIsIpad= sUserAgent.match(/ipad/i) == "ipad", bIsIphoneOs= sUserAgent.match(/iphone os/i) == "iphone os", bI

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

  • JS判断是否在微信浏览器打开的简单实例(推荐)

    最近做很多HTML5的项目,很多页面会通过微信微博等SNS分享出去.在分享页面上提供公司APP的下载.但是在很多应用的浏览器中,点击下载链接无法下载应用.那么针对这些浏览器我们需要给用户提示从safari或者系统自带的浏览器打开分享页面.通过js就可以判断当前页面是在什么浏览器打开的. 以下是一段示例代码,注释中表明了通过JS如何判断是否在微信浏览器打开,是否在QQ空间浏览器,是否在新浪微博打开.当然可以做得更完善一点,再加上判断是在移动设备打开还是在PC端浏览器打开的,更加细分一点,可以判断是

  • js判断手机浏览器操作系统和微信浏览器的方法

    今天就为大家介绍一下用js判断手机客户端平台及系统平台的方法: <script type="text/javascript"> //手机端判断各个平台浏览器及操作系统平台 function checkPlatform(){ if(/android/i.test(navigator.userAgent)){ document.write("This is Android'browser.");//这是Android平台下浏览器 } if(/(iPhonei

随机推荐