识别移动版浏览器的最佳方法

时间:2012-08-08 03:59:29

标签: android ios http http-headers mobile-safari

我正面临this post中描述的问题。建议的解决方案不适合我,因为我正在使用一些jQuery历史/后退按钮插件。

我决定将css拆分为版本 - 一个用于桌面浏览器(具有悬停功能),另一个用于移动版本。 所以我开始检查浏览器的用户代理标头是否包含Mobile字。据我所知,只有Opera不附加该词并使用Mini

如果我想处理大多数iOS / Android设备,这是正确的方法吗?

谢谢

2 个答案:

答案 0 :(得分:1)

我知道您的问题并非专门针对Ruby on Rails,但我可以与您分享我用于识别移动请求的代码。它几乎检查移动或迷你存在的用户代理标题:

  def is_mobile_request?
    request.headers.select{ |k,v| k[/AGENT/]}.values.first[/mobile|mini/i]
  end

到目前为止没有任何问题。

答案 1 :(得分:1)

您还可以使用detectmobilebrowsers.com提供的代码段。它们为用于网站的常用语言提供移动浏览器检测代码。