Tengo una función para agregar una clase civil-active a la etiqueta en la que se hace clic. Cuando se hace clic en la siguiente etiqueta, la clase también se agrega, naturalmente. Pero quiero que la clase civil-active esté allí solo en la etiqueta en la que se hizo clic y que se elimine de su hermano anterior y siguiente, si está presente.
el código que está agregando la clase es
js
var labels = document.getElementsByTagName("label"); for (let i = 0; i < labels.length; i++) { labels[i].addEventListener("click", addclass); } function addclass(event) { event.target.classList.add("civil-active"); }Por favor sugiérame que debo hacer
En el controlador de eventos, busque el elemento que tiene la clase y elimínelo.
function addclass(event) { // Those lines will remove the class on the element that has it (if there is one) let active = document.querySelector(".civil-active") if(active){ active.classList.remove("civil-active"); } event.target.classList.add("civil-active"); }