我正在开发一个web应用程序,需要使用JavaScript来检测设备。请问有没有人能告诉我最好的方法是什么?我在谷歌上找到了几种解决方案,但没有一种是完美的。我不想使用像WURFL这样的服务器端检测。
我的更新
我正在使用JavaScript匹配CSS媒体查询来检测设备。使用Paul Irish的polyfill进行媒体查询匹配:https://github.com/paulirish/matchMedia.js/
我正在开发一个web应用程序,需要使用JavaScript来检测设备。请问有没有人能告诉我最好的方法是什么?我在谷歌上找到了几种解决方案,但没有一种是完美的。我不想使用像WURFL这样的服务器端检测。
我正在使用JavaScript匹配CSS媒体查询来检测设备。使用Paul Irish的polyfill进行媒体查询匹配:https://github.com/paulirish/matchMedia.js/
您可以使用:
JS: 通过用户代理检测
if (navigator.userAgent.match(/Android|BlackBerry|iPhone|iPad|iPod|Opera Mini|IEMobile/i))
从这里获取用户代理字符串: http://www.useragentstring.com/pages/useragentstring.php。
CSS: 使用响应式设计
JS: 通过 screen.width
检测屏幕宽度
/i
,那么就不需要在正则表达式中使用大写字母。 - ccpizza我建议您查看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"
}
< p >(当然,这是假设您正在使用 Nexus 7)那么您将能够执行以下操作:if(WURFL.form_factor == "Tablet"){
//dostuff();
}
这就是您正在寻找的内容。
免责声明:我是提供该免费服务的公司的员工。谢谢。