Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Сделать scrollbar неактивным, как? (https://javascript.ru/forum/misc/15671-sdelat-scrollbar-neaktivnym-kak.html)

evil0790 09.03.2011 10:32

Сделать scrollbar неактивным, как?
 
Здравствуйте, у меня возникла такая задача: при показе модального окна на сайте необходимо блокировать scrollbar, чтобы колёсиком мышки нельзя было прокручивать страничку. Как это реализовать? И вобще, возможно ли такое с помощью JS?

DooMer 09.03.2011 12:28

1) Попробовать динамически убирать скролл при показе окна
2) Держать всегда окно в центре экрана независимо от скрола

ksa 09.03.2011 12:39

Цитата:

Сообщение от evil0790
при показе модального окна на сайте необходимо блокировать scrollbar, чтобы колёсиком мышки нельзя было прокручивать страничку

Сдаётся мне что у тебя это не окно даже... Не говоря уже о модальности. Потому как модальное окно по своему определению уже блокирует работу родительского окна.

shilinpavel 03.12.2011 15:26

Цитата:

Сообщение от ksa (Сообщение 95681)
Сдаётся мне что у тебя это не окно даже... Не говоря уже о модальности. Потому как модальное окно по своему определению уже блокирует работу родительского окна.

А если модальное окно с position:fixed

metaller92 25.06.2013 11:33

У самого подобная проблема.
теме уже 2 года как, но может она будет в топе после моего поста и кто-то ответит.

я при появлении модального окошка делаю overflow-y:hidden; у body. и все ок, но сайт сам дергается, из-за изменения ширины окна. со скроллом и без.

Нужно как-то это убрать, то есть делать главный скролл просто не активным и все.

подскажите пожалуйста как?

вот вам сайт в пример
https://www.humblebundle.com/

кликнув по рисованному человечку, обратите внимание на скролл.

guestalex 12.10.2014 12:02

Цитата:

Сообщение от metaller92 (Сообщение 258325)
У самого подобная проблема.

Нужно как-то это убрать, то есть делать главный скролл просто не активным и все.

подскажите пожалуйста как?

кликнув по рисованному человечку, обратите внимание на скролл.

Всё делается достаточно просто... Если ещё актуально - расскажу как сделать...

danik.js 12.10.2014 13:17

Да в любом готовом скрипте модальных окон можно посмотреть. Скрывается скролл через overflow-y:hidden и задается margin-right, равным предварительно замеренной ширине скроллбара. Короче костыльный корявый способ. К тому же на мобилках это все будет глючить. Нафиг это вообще делать? position:absolute будет вполне достаточно. Тем более что новый тег <dialog> в хроме именно так и работает.

guestalex 12.10.2014 21:26

Ну он не совсем правильно работает... точнее не совсем так, как надо...
у меня уже есть готовое решение для таких окон, позиционируется точно по центру окна браузера, даже если изменять размеры окна браузера. Скроллбар делается не активным, ну это если нужно, а так можно и без этого... то есть страница будет реагировать на прокрутку колеса мышки, но окошко будет всегда по центру.

danik.js 12.10.2014 21:48

А если окно не влезает по высоте, то что происходит?


Часовой пояс GMT +3, время: 15:37.