在 div 中使用鼠标滚轮水平滚动

新手上路,请多包涵

如何使用鼠标滚轮在 na div 中水平滚动,或使用 jquery 拖动?


我试过可拖动,但在我的代码中它没有用。

现在我有了一个水平滚动条。是否可以使用鼠标滚轮滚动我的 div 中的内容?

原文由 Daniel Koczuła 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 467
1 个回答

尝试使用鼠标滚轮进行水平滚动。这是纯 JavaScript:

 (function() {
    function scrollHorizontally(e) {
        e = window.event || e;
        var delta = Math.max(-1, Math.min(1, (e.wheelDelta || -e.detail)));
        document.getElementById('yourDiv').scrollLeft -= (delta * 40); // Multiplied by 40
        e.preventDefault();
    }
    if (document.getElementById('yourDiv').addEventListener) {
        // IE9, Chrome, Safari, Opera
        document.getElementById('yourDiv').addEventListener('mousewheel', scrollHorizontally, false);
        // Firefox
        document.getElementById('yourDiv').addEventListener('DOMMouseScroll', scrollHorizontally, false);
    } else {
        // IE 6/7/8
        document.getElementById('yourDiv').attachEvent('onmousewheel', scrollHorizontally);
    }
})();

这是一个演示,但将 document.bodywindow 作为目标元素: https://taufik-nurrohman.github.io/dte-project/full-page-horizontal-scrolling。网页格式

原文由 Taufik Nurrohman 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题