判断当前设备是否为移动端
1 2 3
| function isMobile() { return /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent); }
|
判断当前设备是否为Android设备
1 2 3
| function isAndroid() { return /Android/i.test(navigator.userAgent); }
|
判断当前设备是否为iOS设备
1 2 3
| function isIOS() { return /iPhone|iPad|iPod/i.test(navigator.userAgent); }
|
判断当前设备是否为PC端
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| function isDesktop() { const userAgent = navigator.userAgent; // 移动设备关键词 const mobileKeywords = ['Mobile', 'Android', 'iPhone', 'iPad', 'Windows Phone', 'BlackBerry', 'Nokia', 'SymbianOS'];
// 判断是否包含移动设备关键词 for (let keyword of mobileKeywords) { if (userAgent.includes(keyword)) { return false; } }
return true; }
|
JavaScript中的navigator.userAgent属性来获取用户代理字符串
如果将iPod也视为移动设备,可以将iPod
添加到mobileKeywords
中。
判断当前环境(当前所在客户端)
判断是否为微信
1 2 3 4
| function isWeChat() { var ua = navigator.userAgent.toLowerCase(); return ua.indexOf('micromessenger') > -1; }
|
判断是否为QQ
1 2 3 4
| function isQQ() { var ua = navigator.userAgent.toLowerCase(); return ua.indexOf("qq") !== -1; }
|
判断是否为支付宝
1 2 3 4
| function isAlipay() { var ua = navigator.userAgent.toLowerCase(); return ua.indexOf('alipayclient') > -1; }
|
判断是否为微博
1 2 3 4
| function isWeibo() { var ua = navigator.userAgent.toLowerCase(); return ua.indexOf('weibo') > -1; }
|