共计 1295 个字符,预计需要花费 4 分钟才能阅读完成。
判断是否是微信
// 判断是否是微信浏览器的函数,在微信登陆的中央须要
function isWeiXin() {
//window.navigator.userAgent 属性蕴含了浏览器类型、版本、操作系统类型、浏览器引擎类型等信息,这个属性能够用来判断浏览器类型
var ua = window.navigator.userAgent.toLowerCase();
// 通过正则表达式匹配 ua 中是否含有 MicroMessenger 字符串
if (ua.match(/MicroMessenger/i) == 'micromessenger') {return true;} else {return false;}
}
判断是否是 ios
function isIOS() {
var u = navigator.userAgent;
var isiOS = !!u.match(/\(i[^;]+;(U;)? CPU.+Mac OS X/); //ios 终端
return isiOS;
}
判断是否是 pc 端
/* 检测设施,ISPC true pc;false wx*/
function IsPC() {
var userAgentInfo = navigator.userAgent;
var Agents = ["Android", "iPhone",
"SymbianOS", "Windows Phone",
"iPad", "iPod"
];
var flag = true;
for (var v = 0; v < Agents.length; v++) {if (userAgentInfo.indexOf(Agents[v]) > 0) {
flag = false;
break;
}
}
return flag;
}
var ISPC = IsPC();
我的项目里要求是否是 pc/wx
微信分电脑微信和手机微信 (android/ios)
手机端上进行横竖屏解决
if(ISPC){}else if(isWeiXin()){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)) {
// 手机端
if(isIOS()){
//ios
if (document.body.offsetWidth > document.body.offsetHeight) {// 横屏} else if (document.body.offsetWidth < document.body.offsetHeight) {// 竖屏}
}else{
//android
if (screen && screen.orientation) {
// 手机微信 andriod
if (screen.orientation.type === 'landscape-primary') {// 横屏} else if (screen.orientation.type === 'portrait-primary') {// 竖屏}
}
}else{// 电脑端}
}
正文完
发表至: javascript
2020-11-06