Javascript 仅更改列表中一个当前元素的颜色
所以我有一个元素列表,最初有白色背景,我的目标是当我点击其中一个元素时,它会将颜色变为蓝色,但只有一个元素可以被选中并具有颜色-如果之前点击了另一个元素,它的背景会变为白色 我试着用这段代码来实现我的目标-我创建了一个变量,该变量应该显示列表中的某个元素之前是否被单击过-如果是,则显示为true,如果不是,则显示为false,但当我在控制台上登录时,它显示为false,因为我在列表中单击了两次相同的元素-然后为trueJavascript 仅更改列表中一个当前元素的颜色,javascript,Javascript,所以我有一个元素列表,最初有白色背景,我的目标是当我点击其中一个元素时,它会将颜色变为蓝色,但只有一个元素可以被选中并具有颜色-如果之前点击了另一个元素,它的背景会变为白色 我试着用这段代码来实现我的目标-我创建了一个变量,该变量应该显示列表中的某个元素之前是否被单击过-如果是,则显示为true,如果不是,则显示为false,但当我在控制台上登录时,它显示为false,因为我在列表中单击了两次相同的元素-然后为true var clicked = "" tab
var clicked = ""
table.addEventListener("click",function (event){
console.log(clicked==true)
table.style.backgroundColor="blue"
clicked=true
})
}
假设表中包含所有元素
table.addEventListener("click",function (event){
for (let i = 0;i<table.children.length;i++) {
table.children[i].style.backgroundColor = "white"
}
event.target.style.backgroundColor="blue"
})
}
table.addEventListener(“单击”),函数(事件){
对于(假设i=0;i在更改值之前,您正在控制台记录对单击的的求值等于true
,因此我将其移动到代码的bootom上,但仍然-当我单击列表中的另一个元素时,单击的conosle日志为false,因此,当我单击它时,它看起来像是以未写入的clicked值开始的。必须是另一个原因,你能发布一个工作片段吗?