我正在使用 jQuery 设置 div 的背景,我想在支持它的浏览器中使用 rgba 颜色,但如果他们不这样做,我想使用 rgb 颜色作为后备。我知道如何用普通的 CSS 来实现这一点。
style="background: rgb(250, 0, 0); background: rgba(250, 0, 0, 0.5);"
你知道我如何用 jQuery 实现这一点.css()
吗?
我正在使用 jQuery 设置 div 的背景,我想在支持它的浏览器中使用 rgba 颜色,但如果他们不这样做,我想使用 rgb 颜色作为后备。我知道如何用普通的 CSS 来实现这一点。
style="background: rgb(250, 0, 0); background: rgba(250, 0, 0, 0.5);"
你知道我如何用 jQuery 实现这一点.css()
吗?
我相信如果您使用css()
,它将覆盖属性的先前值。如果你想做这样的事情,你可以通过手动设置attr()
,或者你可以使用回调函数来查看它是否是IE,并相应地设置值。
使用attr()
$('element').attr('style','background: rgb(250, 0, 0); background: rgba(250, 0, 0, 0.5);');
使用.css()
$('element').css('background', function() {
// if you're using jquery version < 1.9
if($.browser.msie && parseInt($.browser.version, 10) === 8)
return 'rgb(250, 0, 0);';
else
return "rgba(250, 0, 0, 0.5)";
});
注意:如果您使用的是 jquery 1.9 或更高版本,$.browser
则将其删除,因此您需要以不同的方式检测 IE8。
你必须通过 css 两个 args
$(this).css("background-color", "rgb(255, 255, 255)");