jQuery内联样式rgb后备rgba颜色IE 8

时间:2013-07-18 02:27:02

标签: javascript jquery css internet-explorer

我使用jQuery来设置div的背景,我想在支持它的浏览器中使用rgba颜色,但如果它们不支持我想使用rgb颜色作为后备。我知道如何用普通的CSS来实现这个目标。

style="background: rgb(250, 0, 0); background: rgba(250, 0, 0, 0.5);"

你知道如何用jQuery .css()实现这个目标吗?

2 个答案:

答案 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)");