我正在创建一个完整的css布局。但是,某些浏览器(如IE6)不支持框阴影(..和-webkit-box-shadow或-moz-box-shadow)。我想检查它是否不受支持,然后添加其他样式。
在jQuery中这是怎么可能的?
马蒂·莱恩
发布于 2010-08-20 01:42:57
var check = document.createElement('div');
var shadow = !!(0 + check.style['MozBoxShadow']);
if(shadow)
alert('moz-box-shadow available');这就是doing-it-yourself的方式。另一个可靠的方法是modernizr库,它可以为您进行特征检测。
http://www.modernizr.com/
这里根本不需要jQuery。
发布于 2013-04-11 23:31:40
Quick Tip: Detect CSS3 Support in Browsers with JavaScript中描述了一个简洁的函数(纯JavaScript,不支持jQuery),用于检查浏览器支持哪些CSS特性。
函数如下:
var supports = (function() {
var div = document.createElement('div'),
vendors = 'Khtml Ms O Moz Webkit'.split(' '),
len = vendors.length;
return function(prop) {
if (prop in div.style) {
return true;
}
prop = prop.replace(/^[a-z]/, function(val) {
return val.toUpperCase();
});
while (len--) {
if (vendors[len] + prop in div.style) {
// browser supports box-shadow. Do what you need.
// Or use a bang (!) to test if the browser doesn't.
return true;
}
}
return false;
};
})();用法如下:
if (supports('boxShadow')) {
// Do whatever
}它对我来说就像是一个护身符!
https://stackoverflow.com/questions/3524554
复制相似问题