4

我很想知道如何检查 iPhone、iPad 和其他移动浏览器。(JavaScript 或 CSS)

编辑:

请不要使用用户代理字符串。那是可以伪造的。

可能的骗局:

4

4 回答 4

7

我会使用WURFL。它是一个包含 10000 多个移动设备的开源 xml 数据库,可以根据user-agentHTTP 标头值检测(几乎总是)您的移动电话和浏览器功能。

您将获得如下信息:

  1. 屏幕尺寸
  2. XHTML/HTML 支持级别
  3. 图形类型支持

好多其它的。

PHP、Java 和 .NET 等流行语言都有封装 API,因此您不必自己处理 XML 数据库。

于 2010-09-03T00:04:39.997 回答
2

基本上你检查用户代理字符串

http://www.hand-interactive.com/resources/detect-mobile-javascript.htm

检测 iPhone:

navigator.userAgent.toLowerCase().search("iphone") > -1

一般来说,特征检测比浏览器检测要好,知道用户的浏览器可以做什么比他正在使用什么更好。Modernizer是一个很好的工具。

于 2010-09-03T00:10:04.460 回答
1

使用 Modernizr - http://modernizr.com/

Modernizr 是一个 JS 脚本,用于在页面加载时测试浏览器的各种 HTML5 和 CSS3 功能。您可以查看 Modernizr JS 对象,也可以使用它添加到 HTML 元素的类。如果存在“触摸”类,则您有一个触摸屏设备;否则,课程是无接触的。然后你可以在你的 CSS 中做到这一点

.touch .myElement { /* touch device styles */ }

.no-touch .myElement { /* regular browser styles */ }

测试浏览器功能比嗅探用户代理更有用且面向未来。这样,对于您想要添加的每个 CSS3 功能,您都可以轻松地编写一个后备,正如我在这里展示的那样。

于 2012-09-21T21:03:05.990 回答
0

使用 javascript 检测 HTTP 用户代理 - 浏览器名称的花哨术语

于 2010-09-03T00:08:03.000 回答