如何使用JavaScript检测移动设备?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (28)

我被要求创建一个实际的HTML页面/ JavaScript来模拟使用JavaScript代码检测移动设备(iPhone / iPad / Android)。然后,这将使用户进入另一个屏幕,询问他们的电子邮件地址。

提问于
用户回答回答于

您将检测请求的浏览器用户代理字符串,然后根据它来自移动浏览器的内容来决定它。这个设备并不完美,而且从来不会因为用户代理没有针对移动设备进行标准化(至少不是我所知)。

本网站将帮助您创建代码:http : //www.hand-interactive.com/resources/detect-mobile-javascript.htm

示例

您可以通过执行以下操作在JavaScript中获取用户代理:

var uagent = navigator.userAgent.toLowerCase();

然后按照与此相同的格式进行检查(仅使用iPhone作为快速示例,但其他人需要稍微有点不同)

function DetectIphone()
{
   if (uagent.search("iphone") > -1)
      alert('true');
   else
      alert('false');
}

你会创建一个简单的HTML页面,如下所示:

<html>
    <head>
        <title>Mobile Detection</title>
    </head>
    <body>
        <input type="button" OnClick="DetectIphone()" value="Am I an Iphone?" />
    </body>
</html>
<script>
    function DetectIphone()
    {
       var uagent = navigator.userAgent.toLowerCase();
       if (uagent.search("iphone") > -1)
          alert('true');
       else
          alert('false');
    }
</script>
用户回答回答于

没有其他答案确实是100%正确的。如果想检测用户是否使用任何形式的移动设备(Android,iOS,BlackBerry,Windows Phone,Kindle等),则可以使用以下代码:

if (/Android|webOS|iPhone|iPad|iPod|BlackBerry|BB|PlayBook|IEMobile|Windows Phone|Kindle|Silk|Opera Mini/i.test(navigator.userAgent)) {
    // Take the user to a different screen here.
}

所属标签

可能回答问题的人

  • uncle_light

    5 粉丝518 提问8 回答
  • 嗨喽你好

    7 粉丝480 提问8 回答
  • 无聊至极

    4 粉丝504 提问6 回答
  • 人生的旅途

    10 粉丝484 提问6 回答

扫码关注云+社区

领取腾讯云代金券