26

我正在开发一个需要从 javascript 检测设备的 Web 应用程序。谁能告诉我最好的方法是什么?我通过谷歌搜索找到了几个解决方案。但没有人能完全证明。我不想使用像 WURFL 这样的服务器端检测。

我的更新

我通过使用 javascript 匹配 CSS 媒体查询来检测设备。Paul Irish 使用 polyfill 进行媒体查询匹配 https://github.com/paulirish/matchMedia.js/

4

2 回答 2

49

您可以使用:

1)JS:由用户代理检测

if (navigator.userAgent.match(/Android|BlackBerry|iPhone|iPad|iPod|Opera Mini|IEMobile/i))

从这里获取用户代理字符串: http ://www.useragentstring.com/pages/useragentstring.php 。

2)CSS:使用响应式设计

3)JS:通过检测屏幕宽度screen.width

于 2013-05-13T10:59:28.353 回答
29

我建议你看看http://wurfl.io/

简而言之,如果你导入一个很小的 ​​JS 文件:

<script type='text/javascript' src="//wurfl.io/wurfl.js"></script>

您将得到一个 JSON 对象,如下所示:

{
 "complete_device_name":"Google Nexus 7",
 "is_mobile":true,
 "form_factor":"Tablet"
}

(当然,这是假设您使用的是 Nexus 7)并且您将能够执行以下操作:

if(WURFL.form_factor == "Tablet"){
    //dostuff();
}

这就是你要找的。

免责声明:我为提供这项免费服务的公司工作。谢谢。

于 2014-03-10T19:11:12.227 回答