我希望能够检查用户的浏览器是否支持CSS属性
我想在JavaScript中运行检查,并根据它是否被支持来显示适当的HTML代码。有没有比检查用户代理更好的方法?
pointer-events
(请参阅文档)。例如,目前Opera和某些版本的IE并不支持它。我想在JavaScript中运行检查,并根据它是否被支持来显示适当的HTML代码。有没有比检查用户代理更好的方法?
pointer-events
(请参阅文档)。例如,目前Opera和某些版本的IE并不支持它。对于非SVG内容,可以使用以下脚本进行操作:
https://github.com/ausi/Feature-detection-technique-for-pointer-events
您也可以在不使用Modernizr的情况下使用它:
var pointerEventsSupported = (function(){
var element = document.createElement('x'),
documentElement = document.documentElement,
getComputedStyle = window.getComputedStyle,
supports;
if(!('pointerEvents' in element.style)){
return false;
}
element.style.pointerEvents = 'auto';
element.style.pointerEvents = 'x';
documentElement.appendChild(element);
supports = getComputedStyle &&
getComputedStyle(element, '').pointerEvents === 'auto';
documentElement.removeChild(element);
return !!supports;
})();
if(pointerEventsSupported){
// do something
}
if ("pointer-events" in document.body.style)
或者
if ("pointerEvents" in document.body.style)
在SVG内容的情况下,这应该是足够的。
if ('pointerEvents' in document.documentElement.style)
pointer-events
的情况下,没有可靠的测试。 - thirtydot