需求

在我们写项目时候, 经常会遇到限制打开页面的方式;那就需要我们去判断。网上有很多中方式,我给大家总结出来了

总结(解决)
// 是否微信浏览器  普通浏览器
if (/(micromessenger)/i.test(navigator.userAgent)) {
    alert("微信");
} else {
    alert("普通浏览器");
}

// 是否pc 手机
let client =/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent);
if (client) {
    alert("手机");
} else {
    alert("pc");
}

// 是否pc  手机+iPad
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; // 手机+iPad
 }else{
  return false; // pc
 }
}

// 是否APP环境   (本人没用过)
function getIsApp () {
    var ua = navigator.userAgent.toLowerCase();
    if (ua.match(/isapp/i) == "isapp") {
      return true;
    }
    return false;
}
// 是否 IPhoneX
function isIPhoneX(fn){
    var u = navigator.userAgent;
    var isIOS = !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/); //ios终端
    if (isIOS) {    
      if (screen.height == 812 && screen.width == 375){
        //是iphoneX
      }else{
        //不是iphoneX
      } 
    }
}
// 是否 安卓 苹果
var u = navigator.userAgent;
var isAndroid = u.indexOf('Android') > -1 || u.indexOf('Adr') > -1; //android终端
var isiOS = !!u.match(/(i[^;]+;( U;)? CPU.+Mac OS X/); //ios终端
alert('是否是Android:'+isAndroid);
alert('是否是iOS:'+isiOS);

以上是本文所有内容,这是集多位大佬文档整理出来的。有问题有补充可留言

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐