我有一个 jQuery 函数,可以在事件发生时将 Alpha channel 添加到 background-color。
这是我的 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 channel ?
任何帮助将不胜感激。
最佳答案
如果您想使用 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 });
}
希望对您有所帮助。
关于javascript - 使用 jQuery/JavaScript 将 Alpha channel 添加到背景颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16678801/