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

Обработчик события при скролле?

Есть следующий код. Мысль в том, что бы при скролле > 200 добавлять класс блоку, при скролле меньше 200 удалять. Но так как обработчик события при каждом скролле добавляет или удаляет класс у блока (даже если класс уже добавлен или его нет), подумал и решил ввести переменную scroll. На сколько правильно решение? Чувствую можно сделать красивее и удобнее))

let scroll;

  document.addEventListener('scroll', () => {
    if (window.pageYOffset > 200 && scroll !== true) {
      scroll = true;
      block.classList.add('active');
    } else if (window.pageYOffset < 200 && scroll === true) {
      scroll = false;
      block.classList.remove('active');
    }
  });
  • Вопрос задан
  • 218 просмотров
Подписаться 1 Простой Комментировать
Помогут разобраться в теме Все курсы
  • Яндекс Практикум
    Фронтенд-разработчик
    10 месяцев
    Далее
  • Skillbox
    JavaScript
    3 месяца
    Далее
  • Нетология
    Fullstack-разработчик на Python + нейросети
    20 месяцев
    Далее
Решения вопроса 1
XanXanXan
@XanXanXan
document.addEventListener('scroll', () => {
    block.classList.toggle('active', window.pageYOffset > 200);
});
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

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