我使用jQuery来设置div的背景,我想在支持它的浏览器中使用rgba颜色,但如果它们不支持我想使用rgb颜色作为后备。我知道如何用普通的CSS来实现这个目标。
style="background: rgb(250, 0, 0); background: rgba(250, 0, 0, 0.5);"
你知道如何用jQuery .css()
实现这个目标吗?
答案 0 :(得分:4)
我相信如果您使用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。
答案 1 :(得分:-3)
你必须传递css两个args
$(this).css("background-color", "rgb(255, 255, 255)");