我有一个jQuery函数,可以在事件发生时将 Alpha 频道添加到背景颜色。
这是我的jsFiddle。
CSS
div { background-color: rgb(100,100,100); }
的JavaScript
function addAlphaChannel() {
var oldBGColor = $('div').css('backgroundColor'); //rgb(100,100,100)
var newBGColor = oldBGColor.replace('rgb', 'rgba').replace(')', ',.8)'); //rgba(100,100,100,.8)
$('div').css({ backgroundColor: newBGColor });
}
此代码工作正常,但我想知道是否有更好的方法来添加/更改Alpha通道?
非常感谢任何帮助。
答案 0 :(得分:3)
如果您想使用javascript更改rgba css属性,则需要使用replace方法,但是,您可以像这样改进代码:
CSS
div { background-color: rgba(100, 100, 100, 1.0); }
JS
function addAlphaChannel() {
var oldBGColor = $('div').css('background-color'), //rgb(100,100,100),
newBGColor = oldBGColor.replace(/[^,]+(?=\))/, '0.8'); //rgba(100,100,100,.8);
$('div').css({ backgroundColor: newBGColor });
}
希望这可以帮到你。