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

215
Visualizações
¿Cómo cambiar la clase del elemento cuando el último apunta y permanece sobre otro elemento?

El proyecto tiene el menú fijo con el logo svg blanco. Cuando el menú fijo sobre el menú de la sección negra debe permanecer en blanco, si está sobre la sección negra, el logotipo debe convertirse en negro. Probé muchas variantes para este objetivo. Pero todos ellos no funciona correctamente. También traté de usar la antigua biblioteca jQuery: verificación de antecedentes pero no funciona en absoluto. Aquí está la última variante que creé:

 $(window).scroll(function() { let headerLogo = $("#header_logo"); let overlaySection = $("#overlay-section"); let headerLogo_top = headerLogo.offset().top; let headerLogo_bottom = headerLogo_top + headerLogo.height(); let overlaySection_top = overlaySection.offset().top; let overlaySection_bottom = overlaySection_top + overlaySection.height(); let services = $("#services"); let services_top = services.offset().top; let services_bottom = services_top + services.height(); if (headerLogo_bottom >= overlaySection_top && headerLogo_top < overlaySection_bottom) { headerLogo.addClass('black_active') }else if(headerLogo_bottom >= services_top && headerLogo_top < services_bottom){ headerLogo.removeClass('black_active') } else{ headerLogo.removeClass('black_active') } });

Y casi funciona, pero no correctamente porque la clase cambió a temprana y el color del logotipo cambió de negro a blanco cuando no apunta al siguiente bloque negro. Tal vez haya una biblioteca jQuery antigua pero buena, por favor avíseme que necesito averiguar en este problema.

about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

En lugar de addClass y removeClass, ¿ha intentado lo siguiente?

 headerLogo.classList.toggle('black_active');

Por alguna razón, siempre me quedo atascado con los otros dos, pero esto siempre parece funcionar.

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