能力检测又称特性检测,它与前文介绍的用户代理检测不同,能力检测的目标不是识别特定的浏览器,而是识别浏览器的能力。能用能力检测得到解决的问题,不要使用用户代理检测
能力检测的基本形式如下
下面针对不同浏览器的能力检测进行简单说明
要检测当前IE浏览器是哪个版本,最简单的方式是使用document.documentMode属性,该属性只有IE浏览器支持,表示当前的文档模式
除了使用document.documentMode属性外,还可以通过检测浏览器是否支持某个方法,进而判断IE浏览器版本
IE8-浏览器不支持getComputedStyle()方法
IE9-浏览器不支持HTML5新增的定时器requestAnimationFrame
IE10-浏览器不支持自定义属性dataset
chrome浏览器在window对象下有一个专有的chrome属性,返回一个对象