Получить событие горизонтальной прокрутки в JS

Что я хочу сделать, это поймать событие, когда пользователь прокручивает div по горизонтали. Для вертикальной прокрутки я использую событие mousewheel, и оно работает правильно. (горизонтальная прокрутка выполняется перетаскиванием двумя пальцами на сенсорной панели - я тестирую на Mac OS).

Ответ 1

Вы можете обрабатывать горизонтальную прокрутку:

$("#someContainer").on("scroll", function (e) {
            horizontal = e.currentTarget.scrollLeft;
            vertical = e.currentTarget.scrollTop;
            });

В этом случае это связывает все виды событий прокрутки на этом элементе, поэтому вы также можете обрабатывать

Вертикальный e.currentTarget.scrollTop

и

Горизонтальный e.currentTarget.scrollLeft

Ответ 2

У меня нет правильной настройки, чтобы проверить это, но $.scroll() должен сделать трюк. Вероятно, предпочтительнее связать событие mousewheel. Люди используют все средства прокрутки;)

Ответ 3

e.currentTarget.scrollX вместо e.currentTarget.scrollLeft и e.currentTarget.scrollY вместо e.currentTarget.scrollTop