【发布时间】:2019-01-26 10:59:35
【问题描述】:
有没有办法在 jQuery 中检测用户是否在使用移动设备?类似于 CSS @media 属性的东西?如果浏览器在手持设备上,我想运行不同的脚本。
jQuery $.browser 函数不是我想要的。
【问题讨论】:
-
提供专门用于移动设备的移动 URL。这是大多数主要网站处理移动设备的方式。见m.google.com。
-
jQuery 没有,也不能做任何事情。它提供了跨浏览器的 DOM 遍历和操作、浏览器之间的简单动画和 ajax,并为插件创建了一个框架框架。在特别询问 jQuery 解决方案之前,请注意 jQuery 的局限性。
-
用户代理是不断移动的目标,阅读这篇文章的每个人都应该非常警惕用户代理嗅探
-
什么是“移动”设备?它是支持触控的设备吗(包括 Chrome Pixels 和带有鼠标的 Windows 8 笔记本电脑)?它是一个小屏幕的设备(视网膜 iPad 怎么样)?它是 CPU 速度慢的设备吗?还是互联网连接速度慢的设备?根据您想做什么,这个问题的答案会有所不同。瞄准屏幕分辨率或触摸很容易。如果您想为某些设备提供较小的内容或不太密集的 JS,那么就没有灵丹妙药了。测试 window.navigator.connection 并退回到(讨厌的、糟糕的、不明智的)userAgent 嗅探。我的 2 美分。
-
@Cole"Cole9"Johnson 我的观点完全正确。 “移动”似乎被用作触摸、慢速 CPU、慢速网络和小屏幕的总称。但这些都不是完美的假设。我相信单独考虑这些将产生比为一些模糊的“移动”概念设计更好的产品。因此,我向 OP 提出了这个问题。
标签: javascript jquery mobile browser-detection