Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Detecting mobile browsers on the web?

I'm curious to know how to check for iPhone, iPad and other mobile browsers.(JavaScript or CSS)

Edit:

Not user agent string, please. That can be faked.

Possible Dupes:

  • Auto detect mobile browser (via user-agent?) and
    • Standard way to detect mobile browsers in a web application based on the http request
like image 809
Moshe Avatar asked Dec 28 '22 08:12

Moshe


2 Answers

I would use WURFL. It's an Open Source xml-database of more than 10000 mobile devices that will detect (almost always) your Mobile Phone and Browser capabilities given the user-agent HTTP header value.

You will get information like:

  1. Screen size
  2. XHTML/HTML support level
  3. Graphic type support

Many others.

There are wrapper APIs for popular languages such as PHP, Java and .NET, so you won't have to deal with the XML database yourself.

like image 91
Pablo Santa Cruz Avatar answered Dec 31 '22 01:12

Pablo Santa Cruz


Basically you check the User Agent String

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

Detect iPhone:

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

In general feature detection is better than browser detection it is better to know what the user's browser can do than what he's using. Modernizer is a good tool for that.

like image 26
Adam Avatar answered Dec 30 '22 23:12

Adam