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

Как запретить скролл?

Стоит задача: прекратить скролл страницы при прокручивании содержимого в диве. Чтобы не скроллилась страница после полной прокрутки содержимого в диве.

Вот такая структура получается у меня: codepen.io/anon/pen/zvyMVZ
И скрипт там же. Но не работает, и я понимаю почему - потому что надо картинку запихать между .wrap и .port, чтобы скролл отслеживался именно у второго.

Спрятать картинку получается только при добавлении для .wrap position:fixed, но это борода полная

Как поправить скрипт, чтобы без изменения стилей работал скролл?
Спасиб
  • Вопрос задан
  • 298 просмотров
Подписаться 1 Оценить Комментировать
Помогут разобраться в теме Все курсы
  • Яндекс Практикум
    Фронтенд-разработчик
    10 месяцев
    Далее
  • Skillfactory
    Профессия Веб-разработчик
    12 месяцев
    Далее
  • Нетология
    Fullstack-разработчик на Python + нейросети
    20 месяцев
    Далее
Решения вопроса 1
Deonisius
@Deonisius
Родился в 11110110111 году, 11000 января.
var wheelEvt = (/Firefox/i.test(navigator.userAgent)) ? 'DOMMouseScroll' : 'mousewheel';
document.querySelector('.port').addEventListener(wheelEvt, function (e) {
    var evt = e.originalEvent ? e.originalEvent : e,
        delta = evt.detail ? -evt.detail : evt.wheelDelta;
    this.scrollTop += (delta < 0 ? 1 : -1) * 40;
    e.preventDefault();
}, false);

Пример в песочнице
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

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