Skip to content Skip to sidebar Skip to footer

Internet Explorer 9 Object Detection

I am searching for an object detection capability check which will identify IE9. Can you help me?

Solution 1:

Check out this snippet by James Padolsey:

// ----------------------------------------------------------// A short snippet for detecting versions of IE in JavaScript// without resorting to user-agent sniffing// ----------------------------------------------------------// If you're not in IE (or IE version is less than 5) then://     ie === undefined// If you're in IE (>=5) then you can determine which version://     ie === 7; // IE7// Thus, to detect IE://     if (ie) {}// And to detect the version://     ie === 6 // IE6//     ie > 7 // IE8, IE9 ...//     ie < 9 // Anything less than IE9// ----------------------------------------------------------// UPDATE: Now using Live NodeList idea from @jdaltonvar ie = (function(){

    var undef,
        v = 3,
        div = document.createElement('div'),
        all = div.getElementsByTagName('i');

    while (
        div.innerHTML = '<!--[if gt IE ' + (++v) + ']><i></i><![endif]-->',
        all[0]
    );

    return v > 4 ? v : undef;

}());

Afterwards, you could use it like this:

if (ie == 9) {
  // It’s IE9!// Insert your code here
}

The good thing here is that it doesn’t sniff the UA string (which, in itself, is unreliable) — instead, it uses conditional comments, which work reliably in IE.

This can be used to detect IE5—9.

Solution 2:

Not 100% sure this is what you're asking, but if you want to detect information about the browser of the visitor you can do check navigator.appVersion

Example:

<div id="example"></div>

<script type="text/javascript">

txt = "<p>Browser CodeName: " + navigator.appCodeName + "</p>";
txt+= "<p>Browser Name: " + navigator.appName + "</p>";
txt+= "<p>Browser Version: " + navigator.appVersion + "</p>";
txt+= "<p>Cookies Enabled: " + navigator.cookieEnabled + "</p>";
txt+= "<p>Platform: " + navigator.platform + "</p>";
txt+= "<p>User-agent header: " + navigator.userAgent + "</p>";

document.getElementById("example").innerHTML=txt;

</script>

Solution 3:

Use the properties of the IE window object introduced in each release to distinguish IE versions:

  • IE >= 7: ("onpropertychange" in document) && (!!window.XMLHttpRequest)

  • IE >= 8: ("onpropertychange" in document) && (!!window.XDomainRequest)

  • IE >= 9: ("onpropertychange" in document) && (!!window.innerWidth)

  • IE >= 10: ("onpropertychange" in document) && (!!window.matchMedia)

  • IE >= 11: (!!window.msMatchMedia) && (!window.doScroll)

Post a Comment for "Internet Explorer 9 Object Detection"