我正在开发一个需要从 javascript 检测设备的 Web 应用程序。谁能告诉我最好的方法是什么?我通过谷歌搜索找到了几个解决方案。但没有人能完全证明。我不想使用像 WURFL 这样的服务器端检测。
我的更新
我通过使用 javascript 匹配 CSS 媒体查询来检测设备。Paul Irish 使用 polyfill 进行媒体查询匹配 https://github.com/paulirish/matchMedia.js/
我正在开发一个需要从 javascript 检测设备的 Web 应用程序。谁能告诉我最好的方法是什么?我通过谷歌搜索找到了几个解决方案。但没有人能完全证明。我不想使用像 WURFL 这样的服务器端检测。
我通过使用 javascript 匹配 CSS 媒体查询来检测设备。Paul Irish 使用 polyfill 进行媒体查询匹配 https://github.com/paulirish/matchMedia.js/
您可以使用:
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
我建议你看看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();
}
这就是你要找的。
免责声明:我为提供这项免费服务的公司工作。谢谢。