Tengo este fragmento de código donde quiero verificar si hay una clase css presente, si es así, quiero eliminar esa clase específica.
var el = document.querySelector('.main-content'); const promo = 'projectPromoActivateMobile'; const transaction = 'projectTransactionActivate'; const newsletter = 'projectNewsletterActivate'; const landingPage = 'projectLandingPageActivate '; const classLists = [promo,transaction,newsletter,landingPage] let check = el.classList.contains(promo || transaction ||newsletter || landingPage); console.log(check);esto hace el trabajo y la verificación, pero parece que no puede obtener el nombre de la clase, que debe eliminarse.
¿Cómo verificaría si esa clase css específica está presente en el elemento?
promo || transaction || newsletter || landingPage se resolverá en promo , ya que todos los valores son cadenas de longitud distinta de cero (por lo tanto, veraces). Todos los valores siguientes serán ignorados.
Por lo tanto, este código:
let check = el.classList.contains(promo || transaction ||newsletter || landingPage);es exactamente igual a esto:
let check = el.classList.contains(promo);En su lugar, desea utilizar algo como esto:
const classLists = ["promo","transaction","newsletter","landingPage"]; let check = el.classList.some(class => classLists.includes(class));