我有十六进制颜色代码,但有一个 jquery 对象..如何设置背景颜色?
var color = "FF00FF";
if (arr[0] == "True") {
$(e.container).closest('td').css('background-color', color);
}
我尝试使用这个hextorgb 函数返回一个对象。我如何在我的代码中使用它?
var color = arr[1];
var rgbColor = hexToRgb('#' + 'FF00FF');
if (arr[0] == "True") {
alert('setting color:'+ rgbColor);
$(e.container).closest('td').css('background-color', 'rgb(12,3,7)');
}
function hexToRgb(hex) {
var result = /^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(hex);
return result ? {
r: parseInt(result[1], 16),
g: parseInt(result[2], 16),
b: parseInt(result[3], 16)
} : null;
}
此hexToRgb
方法将颜色拆分为单独的通道。因此,作为结果,您将在对象中拥有三个通道。
var result = {
r: "128",
g: "129",
b: "2"
}
在此之后,您可以在 format 中形成新字符串`rgb(${result[0]}, ${result[1], ${result[2]})`
,该字符串可以直接设置为 DOM 元素的背景颜色。
此外,因为您有来自不同通道的颜色,您可以修改它们以构建新的颜色字符串。
但是如果已经有一个十六进制颜色,就不清楚为什么需要这样的转换。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句