Изучение нескольких методов включения горизонтальной прокрутки страниц с помощью колеса мыши в JavaScript

Горизонтальная прокрутка может значительно улучшить взаимодействие с пользователем на веб-сайтах и ​​веб-приложениях с широким контентом или горизонтальным макетом. В этой статье мы рассмотрим несколько способов включения горизонтальной прокрутки страниц с помощью колеса мыши в JavaScript. Реализуя эти методы, разработчики могут предоставить пользователям плавный и интуитивно понятный способ горизонтальной навигации по их контенту. Давайте углубимся в примеры кода и посмотрим, как это делается!

Метод 1. Использование события Wheel

window.addEventListener("wheel", function (event) {
  event.preventDefault();
  var delta = event.deltaX || event.wheelDeltaX;
  var scrollContainer = document.getElementById("scroll-container");
  scrollContainer.scrollLeft += delta;
});

Метод 2. Использование события Wheel с пассивным значением: false

window.addEventListener(
  "wheel",
  function (event) {
    event.preventDefault();
    var delta = event.deltaX || event.wheelDeltaX;
    var scrollContainer = document.getElementById("scroll-container");
    scrollContainer.scrollLeft += delta;
  },
  { passive: false }
);

Метод 3. Обработка события «Колесо мыши»

window.onmousewheel = function (event) {
  event.preventDefault();
  var delta = event.wheelDeltaX || event.deltaX * -1;
  var scrollContainer = document.getElementById("scroll-container");
  scrollContainer.scrollLeft += delta;
};

Метод 4. Использование события Wheel с кросс-браузерной совместимостью

function handleMouseWheel(event) {
  event.preventDefault();
  var delta = event.deltaX || -event.wheelDeltaX || event.detail * 40;
  var scrollContainer = document.getElementById("scroll-container");
  scrollContainer.scrollLeft += delta;
}
if (window.addEventListener) {
  window.addEventListener("wheel", handleMouseWheel, { passive: false });
  window.addEventListener("mousewheel", handleMouseWheel, { passive: false });
  window.addEventListener("DOMMouseScroll", handleMouseWheel, { passive: false });
} else {
  window.attachEvent("onmousewheel", handleMouseWheel);
}

В этой статье мы рассмотрели несколько способов включения горизонтальной прокрутки страниц с помощью колеса мыши в JavaScript. Используя эти методы, разработчики могут обеспечить своим пользователям плавную горизонтальную прокрутку. Не забудьте учитывать кросс-браузерную совместимость и удобство использования при реализации этих методов на своем веб-сайте или веб-приложении. Поэкспериментируйте с этими примерами кода и выберите подход, который лучше всего соответствует вашим конкретным требованиям. Приятной прокрутки!