检查IE8是否使用纯Javascript

时间:2014-02-18 13:30:27

标签: javascript jquery internet-explorer-8

我曾经这样检查过:

$.browser.msie && $.browser.version == 8

但是似乎已经从jQuery的后续版本中删除了$.browser

所以,

如何使用纯javascript检查?

我试过了:

isIE8: navigator.appVersion.indexOf("MSIE 8") > 0

好像这样做,但它看起来不那么好,实际上看起来有很多瑕疵......

还有更好的方法吗?

2 个答案:

答案 0 :(得分:3)

这比您可能想要的单行更长,但比解析UA字符串更安全,因为它基于实际行为(IE条件注释):https://gist.github.com/paulirish/357741

答案 1 :(得分:2)

您可以检查是否支持SVG标记。 IE8中不支持SVG - > http://caniuse.com/#search=svg相反,IE8中引入了DATA标记 - > http://caniuse.com/#search=data

所以:

if (navigator.userAgent.toLowerCase().indexOf('msie') != -1) {
   if (!document.createElement('SVG').getAttributeNS) {
       if (document.createElement('DATA').getAttributeNS) {
           //the browser is defently IE8
        }
    }
}