js实现判断访问设备是电脑还是手机?
我们可以通过获取navigator对象中的userAgent属性,再判断结果是否包含字符串Mobile来确定访问设备是电脑还是手机。
以下是代码:
1 <script> 2 function IsPhone() { 3 var info = navigator.userAgent; 4 //通过正则表达式的test方法判断是否包含“Mobile”字符串 5 var isPhone = /mobile/i.test(info); 6 //如果包含“Mobile”(是手机设备)则返回true 7 return isPhone; 8 } 9 </script>
一些常用设备的返回userAgent属性的值如下:
访问设备 | 返回userAgent属性值 |
Win10电脑 | Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.77 Safari/537.36 Edg/91.0.864.37 |
iphone手机 | Mozilla/5.0 (iPhone; CPU iPhone OS 14_5 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/14.1 Mobile/15E148 Safari/604.1 |
华为安卓手机 |
Mozilla/5.0 (Linux; Android 9; PAR-AL00; HMSCore 5.3.0.312; GMSCore 19.6.29) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/88.0.4324.93 HuaweiBrowser/11.1.1.300 Mobile Safari/537.36 |
ipad平板 | Mozilla/5.0 (iPad; CPU OS 9_3_5 like Mac OS X) AppleWebKit/601.1.46 (KHTML, like Gecko) Version/9.0 Mobile/13G36 Safari/601.1 |