Javascript-форум (https://javascript.ru/forum/)
-   Events/DOM/Window (https://javascript.ru/forum/events/)
-   -   Запретить скроллинг страницы (https://javascript.ru/forum/events/30312-zapretit-skrolling-stranicy.html)

ivan2006bip 31.07.2012 12:49

Запретить скроллинг страницы
 
Здравствуйте!

подскажите, как запретить скроллинг всей страницы? прокрутка будет реализована вот так http://tympanus.net/Tutorials/Websit..._vertical.html и нужно исключить другие способы прокрутки страницы - колесиком мыши, клавишами вврех-вниз...

Deff 31.07.2012 13:08

ivan2006bip,
Так - не пойдёт ?
<style>
html,body{
  overflow-y:hidden;
}
</style>

Dim@ 31.07.2012 13:25

Deff,
стрелками можно крутить ;)

melky 31.07.2012 13:40

Цитата:

Сообщение от ivan2006bip
подскажите, как запретить скроллинг всей страницы? прокрутка будет реализована вот таки нужно исключить другие способы прокрутки страницы - колесиком мыши, клавишами вврех-вниз...

и пальцами вверх\вниз на смартфонах.

немало кодотруда получится, и из-за такой мелочи. а потом ещё в IE надо посмотреть будет... зачем оно вам?

bes 31.07.2012 15:52

Если поместитить в <div style="width: 100%; height: 100%; overflow: hidden"></div>, то проблема вроде решается

Apollo_440 31.07.2012 16:01

Dim@,
а кто не позволяет считать keycode и вернуть браузеру false?

Окончательно вариант решения такой:

CSS:
html,body {overflow-y:hidden}


javascript:
document.body.onkeydown = function(e){
e = e || window.event;
var c = e.keyCode;
//Убирает эвент на стрелках, на pageDown, PageUp, Home, End
if(c>36 && c<41 || c>32 && c<37) return false;
}


Конечно же, если зажать клавишу, то все таки проскачет, это нормально.

Насчет телефонов я думаю не особо будет замудоны с эффектами, дабы у них еще не выросла такая поддержка как у браузеров на ПК.

melky 31.07.2012 16:05

Цитата:

Сообщение от Apollo_440
Окончательно вариант решения такой:

не окончательный, ещё можно скроллить автоскроллом (нажать на колёсико мыши и мотать вниз), и пальцем, на смартфонах.

Цитата:

Сообщение от Apollo_440
Насчет телефонов я думаю не особо будет замудоны с эффектами, дабы у них еще не выросла такая поддержка как у браузеров на ПК.

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


PS вообще, нафиг оно сдалось? запрет скролла в данном случае - пятое колесо, вообще ненужная фича.

Apollo_440 31.07.2012 16:21

Дофига тогда кода нужно писать ради красоты.

Притом если запретить клик на колесико мыши можно лишиться открытия новых вкладок, что ну очень не кстати. Вообщем идея дурная.

bes 31.07.2012 16:32

Мой вариант, я так понимаю, проигнорировали (где там много кода?):)

melky 31.07.2012 16:33

Цитата:

Сообщение от bes (Сообщение 193279)
Мой вариант, я так понимаю, проигнорировали (где там много кода?):)

сделаете пример?

Цитата:

Сообщение от Apollo_440 (Сообщение 193275)
Вообщем идея дурная.

я бы назвал это дизайнерской находкой ;)


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