[英]How can I active a link when click, and deactivate the others in javascript?
當我單擊鏈接時,我試圖只處理一個元素,但是當我單擊另一個元素時,它不會刪除其他鏈接的活動。 誰能幫我? 這是我的代碼。 . .
let parentT = document.querySelector('.menu-item'); //PARENT
let allEl = parentT.querySelectorAll('a'); // ELEMENTS INSIDE PARENT
allEl.forEach(elem =>{
elem.addEventListener('click', (event) => {
event.preventDefault();
event.target.setAttribute('class', 'active');
if(event.target.classList == "active") {
console.log(event.target);
}
});
});
我嘗試了一些方法但沒有結果。
我想這就是你想要的。 單擊一個元素時,此代碼循環遍歷所有錨元素,並從所有元素中刪除活動的 class,然后將活動的 class 添加到單擊的元素。
let parentT = document.querySelector('.menu-item'); //PARENT let allEl = parentT.querySelectorAll('a'); // ELEMENTS INSIDE PARENT allEl.forEach(elem =>{ elem.addEventListener('click', (event) => { event.preventDefault(); allEl.forEach(el => { el.classList.remove('active'); }); event.target.classList.add('active'); }); });
.active { color: red; }
<div class="menu-item"> <a href="#">Link 1</a> <a href="#">Link 2</a> <a href="#">Link 3</a> <a href="#">Link 4</a> <a href="#">Link 5</a> </div>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.