我正在尝试优化针对多种 rgb 颜色样式的脚本。它看起来像这样:
var divs = document.querySelectorAll('div[style^="color"]');
[].forEach.call(divs, function(div) {
if(div.style.color.includes('rgb(215, 218, 220)')){
div.style.color="rgb(23, 23, 24)";
}
});
我想做与目标样式 rgb(215, 218, 220)
、255, 69, 0
和 相同的事情>113、147、255
。如何最简单有效地实现这一目标?
最佳答案
这可能是低效的,因为它根据字符串匹配读取和写入 dom,但您可以使用 RegExp.prototype.test而不是 String.prototype.includes:
var divs = document.querySelectorAll('div[style^="color"]');
var regexp = /rgb\(215, 218, 220\)|rgb\(255, 69, 0\)|rgb\(113, 147, 255\)/;
[].forEach.call(divs, function(div) {
if(regexp.test(div.style.color)){
div.style.color="rgb(23, 23, 24)";
}
});
关于javascript - 如何在 JavaScript 中使用条件语句包含多种颜色样式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54906276/