【问题标题】:How to distinguish between iPhone 4 and iPhone 4s in javascript如何在 javascript 中区分 iPhone 4 和 iPhone 4s
【发布时间】:2013-06-05 15:43:59
【问题描述】:

我有一个只能在 iPhone 4s 及更高版本上运行的应用程序,我需要能够在客户端(即 javascript)上区分设备,并相应地加载应用程序或重定向。 有什么方法可以检测到吗? 谢谢

【问题讨论】:

  • 我的回答是您解决此检查的一个很好的起点吗?如果您需要更多信息或问题,请回复!
  • 谢谢,它帮助我意识到在客户端无法区分 4 和 4 并在其他地方找到我的解决方案。

标签: javascript iphone ios


【解决方案1】:

我为你看到了这三个选项:

1) 使用 预编译的开源脚本 来检查这一点,并根据结果进行重定向。例如:http://detectmobilebrowsers.com/

2) 你实现一个 javascript,它根据导航器参数进行检查。请参阅this 和该 SO 答案中的引用代码。

function iOSversion() {
  if (/iP(hone|od|ad)/.test(navigator.platform)) {
    var v = (navigator.appVersion).match(/OS (\d+)_(\d+)_?(\d+)?/);
    return [parseInt(v[1], 10), parseInt(v[2], 10), parseInt(v[3] || 0, 10)];
  }
}

3.) 您可以使用 Apache 端的重写规则来重定向 到基于用户代理的正确页面。见this。

对于所有 3 个选项,您都会遇到一个问题,即很难区分 iPhone 4 和 4s。看到这个SO answer。

仅提及如果您必须检查视网膜功能,您也可以使用此 JS:

var isRetina = window.matchMedia("(-webkit-min-device-pixel-ratio: 2)").matches;

更多信息什么是最小设备像素比:link。 有关媒体查询的信息也在这里:link

【讨论】:

    猜你喜欢
    • 2018-01-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-07-22
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多