Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

357
Visualizações
Uncaught TypeError: Cannot read properties of null (reading 'classList')
const sections = document.querySelectorAll('section[id]')

function scrollActive(){
    const scrollY = window.pageYOffset

    sections.forEach(current =>{
        const sectionHeight = current.offsetHeight,
              sectionTop = current.offsetTop - 58,
              sectionId = current.getAttribute('id')

        if(scrollY > sectionTop && scrollY <= sectionTop + sectionHeight){
             document.querySelector('.nav__menu a[href*=' + sectionId + ']').classList.add("active")
        }else{
            document.querySelector('.nav__menu a[href*=' + sectionId + ']').classList.remove("active")
        }
    })
}
window.addEventListener('scroll', scrollActive)
about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

document.querySelector is not guaranteed to return an Element. If no matching element is found it will return null. (https://developer.mozilla.org/en-US/docs/Web/API/Document/querySelector).

So you're potentially saying: null.classList.remove(...)

Check that you've got an element from the querySelector before using it, e.g:

const element = document.querySelector('.nav__menu a[href*=' + sectionId + ']')

if (!element) return; // early return

if (scrollY > sectionTop && scrollY <= sectionTop + sectionHeight){
    element.classList.add("active")
} else {
    element.classList.remove("active")
}
about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda