@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');
    }
  });
  • Вопрос задан
  • 216 просмотров
Решения вопроса 1
XanXanXan
@XanXanXan
document.addEventListener('scroll', () => {
    block.classList.toggle('active', window.pageYOffset > 200);
});
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

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