设备判断

1.知识点:Navigator 对象属性

2.判断pc端还是移动端

function isPC() {

var userAgentInfo = navigator.userAgent;

var Agents = ["Android", "iPhone", "SymbianOS", "Windows Phone", "iPad", "iPod"];

var flag = true;

for (var i = 0; i < Agents.length; i++) { if (userAgentInfo.indexOf(Agents[i]) > 0) { flag = false; break; } } return flag; }

3.   // 判断用户移动端使用的系统平台

        function isMobile() {

            var u = navigator.userAgent;

            if (u.indexOf('Android') > -1 || u.indexOf('Linux') > -1) {

                return "Android!"; // 安卓手机

            } else if (u.indexOf('iPhone') > -1) {

                return "iPhone!"; // 苹果手机

            } else if (u.indexOf('iPad') > -1) {

                return "iPad!"; // iPad手机

            } else if (u.indexOf('Windows Phone') > -1) {

                return "Windows Phone!"; // winphone手机

            } else {

                return false;

            }

        }
4.
 // 判断用户是否在微信中打开

        function isWeChat() {

            // toLowerCase() 方法用于把字符串转换为小写。
            var ua = navigator.userAgent.toLowerCase();

            if (ua.indexOf('micromessenger') != -1) {

                return true;

            } else {

                return false;

            }

        }
5.用户使用设备
function mobileType() {
  var u = navigator.userAgent, app = navigator.appVersion;
  var type =  {// 移动终端浏览器版本信息
    ios: !!u.match(/(i[^;]+;( U;)? CPU.+Mac OS X/), //ios终端
    iPad: u.indexOf('iPad') > -1, //是否iPad
    android: u.indexOf('Android') > -1 || u.indexOf('Linux') > -1, //android终端或者uc浏览器
    iPhone: u.indexOf('iPhone') > -1 || u.indexOf('Mac') > -1, //是否为iPhone或者QQHD浏览器
    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/i) || !!u.match(/MIDP|SymbianOS|NOKIA|SAMSUNG|LG|NEC|TCL|Alcatel|BIRD|DBTEL|Dopod|PHILIPS|HAIER|LENOVO|MOT-|Nokia|SonyEricsson|SIE-|Amoi|ZTE/), //是否为移动终端
    webApp: u.indexOf('Safari') == -1 //是否web应该程序,没有头部与底部
  };
  var lists = Object.keys(type);
  for(var i = 0; i < lists.length; i++) {
    if(type[lists[i]]) {
      return lists[i];
    }
  }  
}
原文地址:https://www.cnblogs.com/justSmile2/p/9629890.html