5

我想检查我的一个 JavaScript 函数,以确定我是否在智能手机上,然后根据结果决定是否运行该函数。

在 JavaScript 中检测/检查智能手机(或一般的手持设备)的最佳方法是什么?

例如

if (user is on a smartphone) {
//run this code if on a phone
} else {
//run this code if not on a phone
}

如果没有一种确定的方法来检查电话,那么在决定运行哪个代码之前,我应该执行的最佳检查选择是什么?

编辑/更新:这个类似帖子的答案和评论应该给我一些继续 -在 jQuery 中检测移动设备的最佳方法是什么?

4

3 回答 3

3

Ye olde浏览器嗅探似乎是解决方案

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..
}
于 2012-06-13T12:02:51.287 回答
0

你可以试试 twitter 引导程序, http: //twitter.github.com/bootstrap/scaffolding.html。特别是响应式设计部分。

于 2012-06-13T11:30:02.523 回答
0

您可以使用Categorizr JS 库来测试用户的设备是手机、平板电脑、智能电视还是台式机。Categorizr 使用用户代理嗅探,因此您应该留意脚本的更新,因为用户代理会随着时间的推移而“进化”。

以下是您如何使用 Categorizr 检查用户是否使用智能手机,而不是智能电视、台式机或平板电脑:

if (categorizr.isMobile) {
    //run this code if on a phone
} else {
    //run this code if not on a phone
}
于 2014-06-22T14:59:04.307 回答