我想检查我的一个JavaScript函数,该函数确定我是否在智能手机上,然后根据结果决定是否运行该函数。
在JavaScript中检测/检查智能手机(或一般手持设备)的最佳方法是什么?
e.g。
if (user is on a smartphone) {
//run this code if on a phone
} else {
//run this code if not on a phone
}
如果没有一种明确的方法来检查手机,那么在决定运行哪些代码之前,我应该选择哪些最佳检查?
编辑/更新:此类帖子的答案和评论应该让我有所作为 - What is the best way to detect a mobile device in jQuery?
答案 0 :(得分:2)
Yeold浏览器嗅探似乎是解决方案
if( navigator.userAgent.match(/Android/i)
|| navigator.userAgent.match(/webOS/i)
|| navigator.userAgent.match(/iPhone/i)
|| navigator.userAgent.match(/iPad/i)
|| navigator.userAgent.match(/iPod/i)
|| navigator.userAgent.match(/BlackBerry/i)
){
// some code..
}
答案 1 :(得分:0)
你可以试试twitter bootstrap,http://twitter.github.com/bootstrap/scaffolding.html。特别是响应式设计部分。
答案 2 :(得分:0)
您可以使用Categorizr JS库来测试用户的设备是手机,平板电脑,智能电视还是桌面。分类程序使用用户代理嗅探,因此您应该留意脚本的更新,因为用户代理倾向于" evolve"随着时间的推移。
以下是如何使用分类程序检查用户是否在智能手机上,而不是智能电视,台式机或平板电脑:
if (categorizr.isMobile) {
//run this code if on a phone
} else {
//run this code if not on a phone
}