Задать вопрос

Почему при наведении добавляется класс?

Здравствуйте, делал анимации с помощью Intersection Observer, все появляется, но столкнулся с проблемой, если навожусь на этот элемент к нему назад добавляется этот класс.

/* появление элементов при скроле секция 4 */
const callbackElemSection4Card1 = (entries, observer) => {
    entries.forEach((entry) => {
      if (entry.isIntersecting) {
        document.querySelector('#section-fourth__card_1').classList.remove("opasity-0")
      }
      else{
        document.querySelector('#section-fourth__card_1').classList.add("opasity-0")
      }
    })
  }
  
let options = {
    rootMargin: "0px",
    threshold: 1.0,
};

let observerElemSection4Card1 = new IntersectionObserver(callbackElemSection4Card1, options);

let targetElemSection4Card1 = document.querySelector("#section-fourth__card_1");
observerElemSection4Card1.observe(targetElemSection4Card1);
  • Вопрос задан
  • 150 просмотров
Подписаться 1 Средний 1 комментарий
Пригласить эксперта
Ответы на вопрос 2
szQocks
@szQocks
ну не добавляй этот класс, сделай так что бы этот класс изначально был на элементе, и просто убирай его когда доходишь до элемента, можно ещё вообще после первого срабатывания условия if, отключать обсервер у текущего элемента
Ответ написан
@cryptoUser
Попробуй отключить наблюдатель после появления элемента
observer.unobserve(entry.target);
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы