gpt4 book ai didi

javascript - 我如何使用条件语句来切换标题的颜色?

转载 作者:行者123 更新时间:2023-11-28 00:07:41 25 4
gpt4 key购买 nike

按钮应从原始(黑色)切换为黄色并恢复原状。我的问题是将其还原。在 if-else 语句中,只有 else 语句有效。我已经尝试过 switch 语句但是那不起作用html

var buttonElement = document.getElementById("title-button"); 
var elementbutton = buttonElement;
var elementsArray = document.getElementsByTagName("h1");
var element = elementsArray[0];

elementbutton.addEventListener( "click", function(){
if(elementbutton.hasOwnProperty("yellow")){
element.remove("yellow");
element.classList.remove("bordered-text");
element.style.add = "black";
} else {
element.style.color = "yellow";
element.classList.add("bordered-text");
}
});
.bordered-text{
border-style: solid;
border-color: black;
}
<button id="title-button">Alters title</button>
<h1>Header 1</h1>

最佳答案

您正在单击的按钮没有任何名为 yellow 的属性,因此 elementbutton.hasOwnProperty("yellow") 始终计算为 false,因此 else block 始终在执行。

您应该检查 h1element.style.color,而不是检查被点击按钮的 hasOwnProperty:

var buttonElement = document.getElementById("title-button"); 
var elementbutton = buttonElement;
var elementsArray = document.getElementsByTagName("h1");
var element = elementsArray[0];

elementbutton.addEventListener( "click", function(){
if(element.style.color == "yellow"){
element.style.color = "black";
element.classList.remove("bordered-text");
} else {
element.style.color = "yellow";
element.classList.add("bordered-text");
}
});
.bordered-text{
border-style: solid;
border-color: black;
}
<button id="title-button">Alters title</button>
<h1>Header 1</h1>

关于javascript - 我如何使用条件语句来切换标题的颜色?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55604871/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com