El siguiente código me está produciendo un error.
tab.addEventListener("click", (e) => { e.preventDefault(); if (document.getElementsByTagName("a").classList.contains("active")) { document.getElementsByTagName("a").classList.remove("active"); } else { console.log("nothing") } })Está produciendo este error en la consola.
Uncaught TypeError: Cannot read properties of undefined (reading 'contains') Estoy confundido, porque no estoy seguro de por qué ocurre este error. Aún más extraño, cuando classList.remove("active") está fuera del condicional, ocurre el mismo error, con contains reemplazado por add . ¿Alguien puede explicarme por qué ocurre este error?
Gracias
document.getElementsByTagName("a")devuelve una matriz
.classList no estará definido en una matriz
Entonces, cuando intenta acceder al método contains() , obtiene el error que está viendo.
Una solución sería usar un filtro y para cada uno en la matriz.