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

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

有没有一种可靠的方法来检测用户是否在jQuery中使用移动设备?类似于CSS @media属性的东西?如果浏览器在手持设备上,我想运行不同的脚本。

jQuery $.browser函数不是我想要的。


幕布斯6054654
浏览 605回答 4
4回答

精慕HU

根据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!}

慕森卡

一个简单有效的单线程:function isMobile() { return ('ontouchstart' in document.documentElement); }但是上面的代码没有考虑带触摸屏的笔记本电脑的情况。因此,我提供了基于@Julian解决方案的第二个版本:function isMobile() {   try{ document.createEvent("TouchEvent"); return true; }   catch(e){ return false; }}
打开App,查看更多内容
随时随地看视频慕课网APP