Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/83.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery对象设置十六进制背景色_Jquery_Hex_Background Color - Fatal编程技术网

Jquery对象设置十六进制背景色

Jquery对象设置十六进制背景色,jquery,hex,background-color,Jquery,Hex,Background Color,我有十六进制颜色代码,但有一个jquery对象。如何设置背景颜色 var color = "FF00FF"; if (arr[0] == "True") { $(e.container).closest('td').css('background-color', color); } 我尝试使用hextorgb函数返回一个对象。如何在代码中使用它 var color = arr[1]; var rgbColor = hexToRgb(

我有十六进制颜色代码,但有一个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;
}

此方法将颜色分割为单独的通道。因此,对象中将有三个香奈儿

var result = {
    r: "128",
    g: "129",
    b: "2"
}
在此之后,您可以以`rgb(${result[0]},${result[1],${result[2]})`格式形成新字符串,该字符串可以直接设置为DOM元素的背景色

此外,因为您有来自不同通道的颜色,所以可以通过创建新的颜色字符串来修改它们


但是,如果已经有了十六进制颜色,那么不清楚为什么需要这样的转换。

谢谢你!糟糕的一天不能让你思考清楚:)