18910140161

HTML-JavaScript检查颜色是否为白色不起作用-堆栈溢出

顺晟科技

2022-10-18 14:15:26

141

为什么我的代码不工作?

我想检查段落的颜色是否为白色(由于CSS的原因,它是白色的),当它为白色时,我想将其更改为黑色,以便它是可见的。

<代码>函数MyFunction(){if(document.getElementById(“ lol ”).style.color===“ white ”){document.getElementById(“ lol ”).style.color=“ black ”;}}
<代码>P{颜色:白色;}
<代码><;button onclick=“ myFunction()”>;试一试<;/button>;<;p ID=“ lol ”>;adadada<;/p>;


顺晟科技:

元素没有该属性,因为它是在CSS类中定义的。您需要使用内联或JavaScript来定义它。

<代码>函数MyFunction(){if(document.getElementById(“ lol ”).style.color===“ white ”){document.getElementById(“ lol ”).style.color=“ black ”;}}
function myFunction() {
  if (document.getElementById("lol").style.color === "white") {
    document.getElementById("lol").style.color = "black";
  }
}
<代码><;button onclick=“ myFunction()”>;试一试<;/button>;<;p ID=“ lol ” style=“ color:white;”>;adadada<;/p>;

您在测试时不知道颜色,因为颜色不是内联的。您需要检查计算样式或只使用三元

<代码>函数MyFunction(){Const lol=document.getElementById(“ lol ”);  console.log(window.getComputedStyle(lol,null).color)//上面太复杂了,如果不是黑色,为什么不直接换成黑色呢?  lol.style.color=lol.style.color===“黑色”?“白”:“黑”;}
<代码>P{颜色:白色;}
<代码><;button onclick=“ myFunction()”>;试一试<;/button>;<;p ID=“ lol ”>;adadada<;/p>;

更好:切换类

<代码>函数MyFunction(){Const lol=document.getElementById(“ lol ”);  console.log(lol.ClassList.contains(“ white ”));//可以使用或只是切换LOL.ClassList.Toggle(“白色”)}
<代码>.白色{颜色:白色;}
<代码><;button onclick=“ myFunction()”>;试一试<;/button>;<;p ID=“ lol ” Class=“ white ”>;adadada<;/p>;

  • TAG:
相关文章
我们已经准备好了,你呢?
2024我们与您携手共赢,为您的企业形象保驾护航