【问题标题】:How can I detect Chrome for mobile devices only? [duplicate]如何检测仅适用于移动设备的 Chrome? [复制]
【发布时间】:2016-11-13 20:21:10
【问题描述】:

我只想在移动设备上检测 Chrome,例如 Android 版 Chrome、iOS 版 Chrome。有什么可靠的方法来做到这一点?

编辑 1:如果您想知道为什么...

当地址栏显示/隐藏时,移动版 Chrome 会令人讨厌地更改视口高度。因为我的网站非常依赖 vh 单位,所以在 Android 版 Chrome 和 iOS 版 Chrome 上滚动时的用户体验难看

我的解决方案是将整个网站包装在一个高度有限的容器中,并将滚动转移到它。这可以防止窗口滚动,从而防止地址栏隐藏。唯一的问题是在桌面浏览器上滚动变得有问题,因为我的布局包含obscure the wrapping container's scrollbar 的固定元素。鉴于我可能永远找不到解决该问题的方法,对我来说最好的方法是在移动设备上检测 Chrome,然后再应用新布局。

编辑 2: this question 中给出的答案对我不起作用。他们甚至可以在 Safari 和普通浏览器上检测 Chrome。

【问题讨论】:

  • 您是否有理由需要这样做?浏览器嗅探通常是潜在 XY 问题的迹象。
  • 虽然可能是一个“eww”问题,但它不是(必然)“坏”问题。一个好的答案可以突出检测是如何可能的(不同的方法?),并希望提供一个干净的建议作为跟进。
  • 我编辑了问题来解释。我经历了各种痛苦来尝试确保我不必这样做,但是唉,这就是它的结果:P
  • 简短回答:没有万全之策。
  • 地址栏不见了,你打算做什么不同的事情?比如你想用额外的视口高度做什么?

标签: javascript jquery


【解决方案1】:

在 user-agent-string 中搜索并查找 Chrome 和(Android 或 iOS)。 更多信息:http://www.useragentstring.com/

【讨论】:

    猜你喜欢
    • 2014-09-23
    • 1970-01-01
    • 2014-01-21
    • 1970-01-01
    • 1970-01-01
    • 2014-10-11
    • 1970-01-01
    • 2023-02-13
    • 2013-02-03
    相关资源
    最近更新 更多