如何在JavaScript中将元素背景颜色设置为十六进制值? backgroundColor
方法仅在rgb中设置。
square.style.backgroundColor = input_color;
input_color
是#123456,但在源集rgb(18, 52, 86)
答案 0 :(得分:1)
更好地解决您的问题只是设置背景颜色
square.style.backgroundColor = "rgb(12,34,56)";
否则我会使用Sheika的例子
答案 1 :(得分:0)
如果您想获得rgb
格式的元素的颜色,那么您可以将其从rgb
转换为hex
格式
function rgbToHex(col)
{
if(col.charAt(0)=='r')
{
col=col.replace('rgb(','').replace(')','').split(',');
var r=parseInt(col[0], 10).toString(16);
var g=parseInt(col[1], 10).toString(16);
var b=parseInt(col[2], 10).toString(16);
r=r.length==1?'0'+r:r; g=g.length==1?'0'+g:g; b=b.length==1?'0'+b:b;
var colHex='#'+r+g+b;
return colHex;
}
}
调用函数
var col=document.getElementById('myDiv').style.backgroundColor;
alert(rgbToHex(col)); // alerts hex value
答案 2 :(得分:0)
找到了应该起作用的东西
document.getElementById('square').attributes['style'].textContent='background-color:'+ input_color
答案 3 :(得分:-2)
如果您想要十六进制,可以将其设置为字符串,例如“#123456”,或者您可以使用十六进制数字rgb (0x12, 0x34, 0x56)
。这会回答你的问题吗?