javascriptmobiletablet

How to detect device type using javascript


I am developing an web application where I need to detect the device from javascript. Could anybody tell me whats the best way to do it ? I found several solution by googling. But no one is full proof. I do not want to use server side detection like WURFL.

My update

I am detecing device by matching CSS media queries using javascript. For media query matching using polyfill by Paul Irish https://github.com/paulirish/matchMedia.js/


Solution

  • I advise you check out http://wurfl.io/

    In a nutshell, if you import a tiny JS file:

    <script type='text/javascript' src="//wurfl.io/wurfl.js"></script>
    

    you will be left with a JSON object that looks like:

    {
     "complete_device_name":"Google Nexus 7",
     "is_mobile":true,
     "form_factor":"Tablet"
    }
    

    (that's assuming you are using a Nexus 7, of course) and you will be able to do things like:

    if(WURFL.form_factor == "Tablet"){
        //dostuff();
    }
    

    This is what you are looking for.

    Disclaimer: I work for the company that offers this free service. Thanks.