我想在单击时更改导航栏中的链接 (A) 颜色,并且如果我导航到另一个链接 (B) 颜色应返回链接 (A) 的默认颜色。
links.forEach( a=>{ //Its Color Changes But I Want All The Others To Be In Default Color
a.onclick = () => {
a.classList.add("active");
}
})
答案 0 :(得分:0)
向每个元素添加事件,然后单击链接执行添加/删除类。
var navElements = document.querySelectorAll('a');
//looping through each anchor element
navElements.forEach(function(element){
//adding click event on each anchor element
element.addEventListener('click',function(e){
//stop default behaviour
e.preventDefault();
//select current active element
let active = document.querySelector('.selected');
active?.classList.remove('selected'); //remove class
this.classList.add('selected'); //add class to current click element
});
});
答案 1 :(得分:-2)
links.forEach(a=> {
a.onclick = () => {
links.forEach(a=>a.classList.remove('active'));
a.classList.add("active");
}
})