Задать вопрос
@slavkapiyavka
junior frontend developer

Как добавлять класс при скролле?

Всем привет!
Есть пример:
https://codepen.io/slavka_piyavka/pen/xxbdxGO

Подскажите, как при прокрутке вверх задать списку класс fixed, а при прокрутке вниз убрать его же при помощи js?
Это очень частый случай, но второй день поисков по форумам и гуглу ничего не дал, повсеместно используется jquery, но он категорически запрещён в моём случае. Повторюсь, нужно решение без jquery, только vanilla js, это важно.
p.s. если это вообще возможно.
https://codyhouse.co/demo/auto-hiding-navigation/i...
- вот как это должно в идеале выглядеть.

Думаю нужно использовать слушатель события, а вот куда дальше двигаться - не знаю.

window.addEventListener('scroll', function() {

});
  • Вопрос задан
  • 394 просмотра
Подписаться 1 Простой Комментировать
Помогут разобраться в теме Все курсы
  • Skillbox
    JavaScript
    3 месяца
    Далее
  • Яндекс Практикум
    Фронтенд-разработчик расширенный
    13 месяцев
    Далее
  • Академия Eduson
    Fullstack-разработчик на JavaScript
    11 месяцев
    Далее
Решения вопроса 1
like-a-boss
@like-a-boss
Признайся,тебяТянетНаКодМужика,ты—программный гей
Нужно слушать событие scroll и относительно предыдущей позиции определять направление:
window.addEventListener('scroll', function(e) {
  if (this.oldScroll > this.scrollY) {
    console.log('up');
  } else {
    console.log('down');
  }
  this.oldScroll = this.scrollY;
}, false);
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

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