检测网络上的移动浏览器?

时间:2010-09-03 00:03:41

标签: javascript browser-detection mobile-browser device-detection

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

编辑:

请不是用户代理字符串。这可能是假的。

可能的Dupes:

4 个答案:

答案 0 :(得分:7)

我会使用WURFL。它是一个包含超过10000个移动设备的开源xml数据库,它将在user-agent HTTP标头值的情况下检测(几乎总是)您的移动电话和浏览器功能。

您将获得以下信息:

  1. 屏幕尺寸
  2. XHTML / HTML支持级别
  3. 图形类型支持
  4. 许多其他人。

    有适用于PHP,Java和.NET等流行语言的包装API,因此您不必自己处理XML数据库。

答案 1 :(得分:2)

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

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

检测iPhone:

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

通常,功能检测优于浏览器检测,最好知道用户的浏览器可以做什么而不是他正在使用的浏览器。 Modernizer 是一个很好的工具。

答案 2 :(得分: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功能,您可以轻松编写回退,如我在此处所示。

答案 3 :(得分:0)

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