Javascript 单击同一节点列表中的任何节点时,从节点列表中删除类名
我对javascript编程相当陌生,我想了解更多。当我单击同一节点列表中的任何节点时,我想从节点列表的每个节点中删除一个类名 我写了这段代码:Javascript 单击同一节点列表中的任何节点时,从节点列表中删除类名,javascript,Javascript,我对javascript编程相当陌生,我想了解更多。当我单击同一节点列表中的任何节点时,我想从节点列表的每个节点中删除一个类名 我写了这段代码: d = document.querySelectorAll(".chat-line__message"); d.forEach(removeHighlight); function removeHighlight(item){ item.addEventListener("click", function(){ item.forEach(
d = document.querySelectorAll(".chat-line__message");
d.forEach(removeHighlight);
function removeHighlight(item){
item.addEventListener("click", function(){
item.forEach(function(element){
element.classList.remove("highlight");
});
//for-loop instead of forEach doesn't work either.
})
}
我做错了什么?谢谢你。如果我理解你的怀疑,我会比你几乎到了那里:
<button onclick="myFunction()">Try it</button>
<div class="myDIV">
This is a DIV element.
</div>
<div class="myDIV">
This is a DIV element.
</div>
<script>
function myFunction()
{
d = document.querySelectorAll(".myDIV");
d.forEach(removeHighlight);
}
function removeHighlight(item) {
item.classList.toggle("highlight");
}
</script>
试试看
这是一个DIV元素。
这是一个DIV元素。
函数myFunction()
{
d=document.queryselectoral(“.myDIV”);
d、 forEach(移除突出显示);
}
功能移除突出显示(项目){
item.classList.toggle(“突出显示”);
}
享受javascript编码的乐趣
项
是单个元素…您也可以将其分配给单击侦听器
您希望在集合上循环以从集合中的所有元素中删除该类
function removeHighlight(item){
item.addEventListener("click", function(){
d.forEach(function(element){
// ^^ iterate collection
element.classList.remove("highlight");
});
});
}
要从节点列表中的每个节点中删除
.highlight
类,请在中单击事件处理程序并从中删除。highlight
类:
var-elements=document.querySelectorAll(“.chat-line_uu消息”);
元素。forEach(功能(项){
item.addEventListener(“单击”,函数(){
elements.forEach(函数(元素){
元素。类列表。删除(“突出显示”);
});
})
});代码>
ul{
列表样式类型:无;
填充:0;
}
李:悬停{
背景:矢车菊蓝;
}
.聊天在线信息{
字体大小:20px;
字体大小:粗体;
}
.chat-line\u消息。突出显示{
背景:橙色;
}
- A
- B
- C
- D
- E
你试过调试你的代码吗?我试过了。我的点击事件似乎不起作用。“var element=document.getElementById(“myDIV”);”的用途是什么?抱歉,Jeroen,这是我的测试代码。感谢评论(好),欢迎@FurkanÖzdemir,请将我的回答标记为已接受。继续做好工作,祝你有美好的一天!