为了账号安全,请及时绑定邮箱和手机立即绑定

检测移动设备的最佳方法是什么?

检测移动设备的最佳方法是什么?

幕布斯6054654 2019-05-22 14:28:55
检测移动设备的最佳方法是什么?有没有一种可靠的方法来检测用户是否在jQuery中使用移动设备?类似于CSS @media属性的东西?如果浏览器在手持设备上,我想运行不同的脚本。jQuery $.browser函数不是我想要的。
查看完整描述

4 回答

?
精慕HU

TA贡献1845条经验 获得超8个赞

根据Mozilla - 使用用户代理进行浏览器检测

总之,我们建议在用户代理中的任何位置查找字符串“Mobi”以检测移动设备。

像这样:

if (/Mobi/.test(navigator.userAgent)) {
    // mobile!}

这将匹配所有常见的移动浏览器用户代理,包括移动Mozilla,Safari,IE,Opera,Chrome等。

Android更新

EricL建议Android也作为用户代理进行测试,因为平板电脑的Chrome用户代理字符串不包含“Mobi”(但是手机版本会这样做):

if (/Mobi|Android/i.test(navigator.userAgent)) {
    // mobile!}


查看完整回答
反对 回复 2019-05-22
?
慕森卡

TA贡献1806条经验 获得超8个赞

一个简单有效的单线程:

function isMobile() { return ('ontouchstart' in document.documentElement); }

但是上面的代码没有考虑带触摸屏的笔记本电脑的情况。因此,我提供了基于@Julian解决方案的第二个版本:

function isMobile() {
  try{ document.createEvent("TouchEvent"); return true; }
  catch(e){ return false; }}


查看完整回答
反对 回复 2019-05-22
  • 4 回答
  • 0 关注
  • 580 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信