Javascript 如何根据类名和内部文本更改元素的背景?
我正在尝试编写一个Chrome扩展,用特定的文本内容更改div类的背景色。我知道理想情况下您会希望按元素ID进行搜索,但我没有这个选项 基本上,我想查找带有Javascript 如何根据类名和内部文本更改元素的背景?,javascript,html,Javascript,Html,我正在尝试编写一个Chrome扩展,用特定的文本内容更改div类的背景色。我知道理想情况下您会希望按元素ID进行搜索,但我没有这个选项 基本上,我想查找带有class=“noclick work order status”(尾随空格是有意的)的div元素,并将这些div的背景色更改为黄色 下面是我尝试过的,它确实会将那些divs的背景变成黄色,但它也会将内部文本更改为我正在搜索的文本 函数setColor(元素,颜色){ element.style.backgroundColor=颜色; } v
class=“noclick work order status”
(尾随空格是有意的)的div
元素,并将这些div
的背景色更改为黄色
下面是我尝试过的,它确实会将那些div
s的背景变成黄色,但它也会将内部文本更改为我正在搜索的文本
函数setColor(元素,颜色){
element.style.backgroundColor=颜色;
}
var elems=document.getElementsByClassName(“noclick工单状态”);
对于(i=0;i
您缺少一个等号。你需要2个来进行比较。使用您拥有的代码,您可以将相同的内部文本分配给同一类的所有元素
if(elems[i].innerHTML==“初始检查/工作”){
您缺少一个等号。您需要2进行比较。使用现有代码,您将相同的内部文本分配给同一类的所有元素
if(elems[i].innerHTML==“初始检查/工作”){
之所以这样做,是因为您在if
条件下使用赋值运算符。
elems[i].innerHTML=“初始检查/工作”
使用
元素[i]将其更改为比较。innerHTML==“初始检查/工作”
原因是您在if
条件下使用赋值运算符。
elems[i].innerHTML=“初始检查/工作”
使用
elems[i]将其更改为比较。innerHTML==“初始检查/工作”
它应该是比较运算符
if(elems[i].innerHTML == "Initial Inspection/Work"){
它应该是比较运算符
if(elems[i].innerHTML == "Initial Inspection/Work"){
我很高兴在发帖后直接发现了这个,但我很高兴你的帮助。我很高兴在发帖后直接发现了这个,但我很高兴你的帮助。