Exception
Exception

Reputation: 8389

How can I detect iOS6 device using feature detection

Is there any generic way to detect iOS6 device using feature detection.

Upvotes: 2

Views: 913

Answers (2)

Adriano Repetti
Adriano Repetti

Reputation: 67128

I think the best way is always to parse the user agent string but you can detect the Safari version introduced with iOS 6 using a previously unsupported feature (see this article for a more complete list, I'll provide just one example).

Basically you have to mimic the same technique used by modernizr, with this piece of code you'll check if the <input> type file is supported, if it is then you're running on Safari with iOS 6 or greater. Of course just using features you can't be sure that the user isn't using another browser (that's why I prefer the user agent string if you have to detect the OS version). For a comparison see this post here on SO.

function isNewVersion() {
    var elem = document.createElement("input");
    elem.setAttribute("type", "file");

    return elem.type !== "text";
}

Upvotes: 2

BenM
BenM

Reputation: 53238

You could check the FileReader API, but of course this'll match many modern desktop browsers, too (I'm not sure if that's going to cause you some problems, but I doubt it):

var iOS6 = false;
if(window.FileReader)
{
    iOS6 = true;
}

Upvotes: 2

Related Questions