Mi proyecto tiene una plétora de observadores de intersecciones, sin embargo, uno tiene una especie de problema.
El problema: cuando mi .navBarContainer cruza con mis otros divs que también están siendo observados por Intersection Observers, mi .navBarContainer reacciona con una animación que NO está adjunta.
Se supone que mi .navBarContainer solo cambia de color cuando ya no se cruza con el encabezado; sin embargo, después de cruzarse con otro div, puede deslizarse desde la derecha.
No entiendo por qué sucede esto, y tengo problemas para solucionar el problema.
Ejemplos de mi código:
const header = document.querySelector(".navBarContainer"); const imageHeader = document.querySelector(".myImageHeader"); const imageHeaderOptions = { rootMargin: "-75px 0px 0px 0px" }; const imageHeaderObserver = new IntersectionObserver(function( entries ) { entries.forEach(entry => { if (!entry.isIntersecting) { header.classList.add("scrolled"); } else { header.classList.remove("scrolled"); } }); }, imageHeaderOptions); imageHeaderObserver.observe(imageHeader); const sLoader = document.querySelector(".services"); const options = { root: null, threshhold: 1 } const observer = new IntersectionObserver(function(entries, observer){ entries.forEach(entry => { entry.target.classList.toggle("show", entry.isIntersecting) }) }, options) observer.observe(sLoader)