JS-решения №4. Универсальное отключение скролла на сайте

preview_player
Показать описание
Привет! Очень часто нужно реализовать модальное окно на сайте. А когда есть модальное окно - вряд ли мы хотим, чтобы сайт под ним ездил в момент открытия. Чтобы это исправить - нужно отключать скролл у сайта. В этом видео я и научу вас отключать скролл, причем даже на айфонах. Поехали!

Меня зовут Максим Васянович. Фрилансер уже 5 лет, создал более 50 коммерческих сайтов. Преподаватель в онлайн-университете Skillbox, автор курса Веб-верстка.

#обучение #scroll #верстка
Рекомендации по теме
Комментарии
Автор

Максим, спасибо за подробное и детальное видео, благодаря ему можно ответить на домашние задания по основному курсу в SkillBox "Курс Веб-вёрстка для начинающих 2.0 (2019) . Жаль, что в самой обучающей программе нет такой информации. Очень похоже на рисунок совы

scarletflower
Автор

Спасибо автору видео за подробный гайд, однако есть моментик, у меня такая проблема что мне нужно повесить эти две функции на одну кнопку - это корзина. Как это сделать, был бы вам очень благодарен за помощь

bojour
Автор

Спасибо, Макс. Все понятно. Подписалась на канал - много полезного😉

yoga_zhivivlegkosti
Автор

Ты слегка запутался(body сразу 3 position задал), но в целом всё понятно.

ruden
Автор

А как сделать, чтоб скролл доходил до определённого места, а потом отключался скролл вниз, а вверх оставался?

TheFastmind
Автор

помоги мне пожалуйста. Что делать, если есть блок с контентом, с фиксированной длииной, и margin: 0 auto. И когда исчезает скролл, то контент съезжает вправо по длине этого скролла. Да, можно поставить padding-right с длиной скролла, и тогда контент останется на месте. Но в сафари скролл отличается длинной, и padding-right уже не актуально, контент вспе равно съезжает. Помоги, что делать в этом случае.

markcherepivskiy
Автор

А как сделать, чтобы при этом всем работал якорь?

vetrov
Автор

Отличный скрипт. Только есть вопрос. SideBar (вертикальное меню справа) - открытие по мобильной кнопке и закрытие по крестику в самом SideBar
А как можно добавить обработку событий по нажатию кнопки esc и нажатию левой мыши в любом месте за областью SideBar, чтобы скролл снова активировался?

rumster
Автор

У меня при закрытии окна все равно была прокрутка наверх. Изменил window.scroll({ top: pagePosition, left: 0 }) на window.scroll(0, pagePosition) и все заработало.

DimaGaranin
Автор

Как сделать модальное окно видео есть, как заблокировать прокрутку - тоже есть, а вот как вычислять ширину скрола, что бы подставлять такой же отступ? а то контент прыгает, когда блокируем прокрутку =)

ВадимЯковенко-яв
Автор

а как оставить полоску скролла при его отключении?

danila.abramov
Автор

Почему-то плавно прокручивает сверху вниз(((

dimazub