Как подавить прокрутку колесика мыши в окне ...? - PullRequest
8 голосов
/ 05 декабря 2008

Я работаю над приложением Canvas, встроенным в страницу. У меня есть, чтобы вы могли увеличить масштаб изображения с помощью колесика мыши, но, к сожалению, это прокручивает страницу, поскольку она является частью статьи.

Можно ли предотвратить прокрутку колесика мыши по окну, когда я вращаю мышь над элементом dom?!

Ответы [ 2 ]

9 голосов
/ 05 декабря 2008

Присоедините обработчик событий для колеса мыши (не Gecko) / DOMMouseScroll (не IE) и запретите его действие по умолчанию (то есть прокрутить содержимое):

if (element.addEventListener)
    element.addEventListener("DOMMouseScroll", function(event) {
        event.preventDefault();
    }, false);
else
    element.attachEvent("mousewheel", function() {
        return false;
    })

Надеюсь, это поможет!

0 голосов
/ 28 марта 2014

Я знаю, что это старая версия, но она все еще может быть полезна для googlers.

Я написал плагин jQuery для этого: $. Disablescroll .

Он обрабатывает не только колеса мыши, но и события касания и нажатия клавиш, которые обычно вызывают прокрутку.

// disable all scrolling:
$(window).disablescroll();

// enable scrolling again:
$(window).disablescroll("undo");
...