How to toggle active class between list items with Javascript | Sololearn: Learn to code for FREE!
Novo curso! Todo programador deveria aprender IA generativa!
Experimente uma aula grƔtis
0

How to toggle active class between list items with Javascript

A simple list <ul> <li class="active">one</li> <li>two</li> </ul> I want when i click on any one of these two, then Javascript add active class to it and remove it from the other item. It's simple with jQuery, but i want it with Javascript, thanks.

29th Jul 2020, 4:21 PM
Mohamed Salah
Mohamed Salah - avatar
5 Respostas
+ 3
Emanuel MaliaƱo the issue is we don't use toggle class at all, we have to clear the previous active li and set the new active li, toggle class active won't solve the problem.
29th Jul 2020, 5:03 PM
CalviÕ²
CalviÕ² - avatar
+ 1
You can do that with element.classList.add('active') element.classList.remove('active')
29th Jul 2020, 4:24 PM
Emanuel MaliaƱo
Emanuel MaliaƱo - avatar
+ 1
// firstly, clear all li class name document.querySelectorAll('ul li').forEach(li => li.style.className = ''); // next set the new select li selectedLi.style.className = 'active'; Emanuel MaliaƱo your code only works on toggling the same element, which is not what Mohamed Salah wants.
29th Jul 2020, 4:28 PM
CalviÕ²
CalviÕ² - avatar
0
CalviÕ² It is just a help, it is not all the code.āœŒ
29th Jul 2020, 4:46 PM
Emanuel MaliaƱo
Emanuel MaliaƱo - avatar
0
CalviÕ² You are right, i edit my answer
29th Jul 2020, 5:11 PM
Emanuel MaliaƱo
Emanuel MaliaƱo - avatar