我正在尝试使用 JavaScript 插入或编辑 HTML 元素,但我不知道如何让 JavaScript 使用十六进制颜色而不是 RGB 输出 HTML。
例如,如果我想将元素的颜色更改为 #ff0000
,JavaScript 实际上会输出 rgb(255, 0, 0)
,即使我在脚本中使用十六进制颜色。
请参阅此JSFiddle举个例子。
让 HTML 代码使用十六进制颜色而不是 RGB 的最短路径是什么?
注意:这不是 this question 的重复项。这是一个非常不同的问题。将一个特定元素的 RGB 值转换为十六进制值以用于其他用途是完全不同的。我正在尝试使用十六进制值而不是 RGB 生成 HTML 元素。我需要容器的innerHTML 来包含十六进制值。
最佳答案
只需使用其他问题的答案对 HTML 进行后处理即可:
document.getElementById('hiThere').addEventListener('click',function () {
document.getElementById('myText').style.color = '#ff0000';
var markup = document.body.innerHTML.trim();
markup = markup.replace(/rgb\((\d{1,3}), (\d{1,3}), (\d{1,3})\)/, rgb2hex);
console.log(markup);
});
关于javascript - 通过 Javascript 生成的 HTML 中的十六进制颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25016622/