Обнаружить горизонтальное колесо мыши
Я хотел бы сделать различие между тремя случаями:
e.preventDefault();
if(Mousewheel.direction = Left)
base.goForward();
else if(Mousewheel.direction = Right)
base.goBack();
else{
//Doing normal slide
Но я не могу найти ничего, указывающего, является ли колесо мыши горизонтальным или вертикальным, единственные возвращения плагина Mousewheel, являющегося дельта и событием.
Если кто-то знает, как я могу сделать разницу между горизонтальным и вертикальным колесом, спасибо за то, что вы делитесь своими советами.
Ответы
Ответ 1
ОБНОВЛЕНИЕ. Я протестировал его на своем ноутбуке, а event.originalEvent.wheelDeltaX
действительно ваш ответ.
Используя некоторые инструменты отладки javascript, поместите контрольную точку в обработчик событий и рассмотрите объект события.
![enter image description here]()
Есть некоторые интересные свойства, такие как event.originalEvent.wheelDeltaX
и event.originalEvent.wheelDeltaY
. У меня нет мыши с горизонтальной прокруткой, чтобы проверить ее, но, возможно, это ваше решение.
Ответ 2
Большинство драйверов scrollwheel имеют опцию, которая изменяет вертикальную прокрутку по горизонтали, когда удерживается клавиша shift. Попробуйте обнаружить это вместо этого.
Ответ 3
Вы можете сделать это в IE9, IE10, Firefox, Safari и Chrome. В разных браузерах в настоящее время каждый из них имеет другое событие, которое вам нужно зарегистрировать (хотя все они в конечном итоге сходятся на новом стандартном событии W3C onwheel).
В другом ответе я положил кучу подробностей об обнаружении прокрутки по оси x.