Javascript 颜色更改按钮onclick

Javascript 颜色更改按钮onclick,javascript,button,Javascript,Button,好的,到目前为止,我有一个有几个按钮的页面,每当你点击按钮,它就会变成红色,现在我想补充一点,每当你点击它更多次,颜色就会改变 例如:首先,按钮是绿色的,第一次单击时它变为红色,第三次单击时它变为粉红色,依此类推 我尝试使用我创建的set_onclick函数来实现这一点,然后将以下代码复制: for (var a = 1; a < (amount + 1); a++) { document.getElementById("button" + a).setAttr

好的,到目前为止,我有一个有几个按钮的页面,每当你点击按钮,它就会变成红色,现在我想补充一点,每当你点击它更多次,颜色就会改变

例如:首先,按钮是绿色的,第一次单击时它变为红色,第三次单击时它变为粉红色,依此类推

我尝试使用我创建的set_onclick函数来实现这一点,然后将以下代码复制:

for (var a = 1; a < (amount + 1); a++) {
    document.getElementById("button" + a).setAttribute("onclick", "onbuttonclicked(" + a + ")");

按钮

制作一个功能,可以计算点击次数,并根据点击量更改按钮的颜色

您可以这样更改一个类:

document.querySelector(".MyElement").className = "MyClass";
希望您知道,使用querySelector搜索类时,需要在类名称前使用“.”。如果尝试按ID查找,请在ID前面使用带“#”的querySelector或使用getElementById:

document.getElementById("MyElement").className = "MyClass";
例如:

let counter = 0 

document.getElemenetById('button').onclick = function(){
    counter += 1
}

if (counter = 0) {
    document.getElementById('button').className = 'red'
} else if (counter = 1) {
    document.getElementById('button').className = 'blue'
}

let计数器=0
点击我
函数myFunction(){
计数器+=1
}
如果(计数器=0){
document.getElementById('button')。className='red'
}否则如果(计数器=1){
document.getElementById('button')。className='blue'
}

正如您所说,
按钮的颜色取决于您单击按钮的次数,并且您必须管理每个按钮的本地状态,因为有许多按钮

我认为您首先需要的是一个对象,它会像这样改变颜色,其中键是
count
,值是color

const obj = {
1 : "red",
2 : "blue"
3 : "pink"
4 : "skyblue"
...
...
...
}
然后根据它改变颜色

var colorMap={
1:“红色”,
2:“蓝色”,
3:“粉红色”,
4:“火红”,
5:“棕色”,
6:“黄色”,
7:“黑色”
}
第页();
功能页(){
document.body.style.backgroundColor=“灰色”;
创建按钮(30);
}
document.body.addEventListener(“单击”,(e)=>{
if(例如target.classList.contains(“按钮”)){
让currentbtnCount=parseInt(例如,target.getAttribute(“数据当前计数”))+1;
e、 target.style.backgroundColor=colorMap[currentbtnCount]?colorMap[currentbtnCount]:“黑色”;
e、 setAttribute(“数据当前计数”,currentbtnCount);
}
})
函数创建按钮(数量){

对于(var a=1;a我制作了一个var“count=0;”和一个带有“button.onclick=count+1”的函数,但我不知道如何更改颜色。我知道我需要制作一个函数来计算点击次数,但我不知道如何将它更改颜色的函数放入这种代码中。在某些点击之后是否也可以隐藏按钮?或者我需要o为其编制其他代码
let counter = 0 
<button onclick="myFunction()">Click me</button>

<script>
    function myFunction() {
        counter += 1
    }

   if (counter = 0) {
        document.getElementById('button').className = 'red'
   } else if (counter = 1) {
        document.getElementById('button').className = 'blue'
   }
</script>
const obj = {
1 : "red",
2 : "blue"
3 : "pink"
4 : "skyblue"
...
...
...
}