gpt4 book ai didi

javascript - 使用javascript更改第二个按钮的颜色

转载 作者:行者123 更新时间:2023-12-01 01:03:40 25 4
gpt4 key购买 nike

我有两个红色按钮。如果单击按钮,颜色应更改为绿色。如果再次单击,它应该返回红色。现在我成功更改了第一个按钮的颜色,但没有更改第二个按钮的颜色。有人有想法吗?

我已经有了一个可以改变一个按钮颜色的java脚本

var button = document.querySelector("button");

button.addEventListener("click", function() {
const curColour = button.style.backgroundColor;

if (curColour === 'red') {
button.style.backgroundColor = "green";
} else {
button.style.backgroundColor = "red";
}
});
button {
height: 40px;
width: 160px;
border: 4px;
border-radius: 20px 20px 20px 20px;
border-color: red;
color: yellow;
padding: 12px 15px;
text-align: center;
font-size: 16px;
cursor: pointer;
}

.button1 {
background: red
}

.button1:hover {
background-color: green;
}
<button id="bGeneral" class="button1" name="bGeneral"><b>General</b></button>
<!-- Create extra space -->
<p><br></p>
<!-- The Next Button Plates -->
<button id="buttonP" class="button1" name="buttonP"><b>Plates</b></button>

期望能够改变两个按钮的颜色

最佳答案

您可以使用toggleClass。还可以使用 querySelectorAll 这将提供所有按钮。然后迭代这个集合并向其中添加事件监听器。 .内部回调函数使用classList.toggle添加或删除类

var button = [...document.querySelectorAll("button")].forEach((item) => {
item.addEventListener("click", function() {
this.classList.toggle('toggleButtonColor')
});

})
button {
height: 40px;
width: 160px;
border: 4px;
border-radius: 20px 20px 20px 20px;
border-color: red;
color: yellow;
padding: 12px 15px;
text-align: center;
font-size: 16px;
cursor: pointer;
}

.button1 {
background: red
}

.button1:hover {
background-color: green;
}

.toggleButtonColor {
background: green;
}
<body style="background-color:#E3CEF6;">

<button id="bGeneral" class="button1" name="bGeneral"><b>General</b></button>
<!-- Create extra space -->
<p><br></p>
<!-- The Next Button Plates -->
<button id="buttonP" class="button1" name="buttonP"><b>Plates</b></button>
</body>

关于javascript - 使用javascript更改第二个按钮的颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55825066/

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