【问题标题】:React native web scrollView horizontal scroll with mouse用鼠标反应原生 web scrollView 水平滚动
【发布时间】:2021-05-03 17:49:54
【问题描述】:

使用 react-native-web,我有一个滚动视图,其内容比屏幕宽得多。使用“水平”,我可以按预期沿 x 轴滚动,但只能使用笔记本电脑的触摸板。鼠标滚轮滚动不会做任何事情,因为滚轮似乎只垂直滚动而不是水平滚动。 我一直在寻找一段时间,但找不到使用鼠标滚轮进行水平滚动的任何方法。 对此的任何帮助将不胜感激!

【问题讨论】:

    标签: javascript react-native react-native-web


    【解决方案1】:

    默认情况下,用户需要按住Shift + Scrolling Mouse Wheel才能水平滚动。

    编辑:这个问题可以通过 jQuery 解决,但需要你用 CSS "overflow-y: hidden" 隐藏竖线。您需要下载 jQuery.jsjQuery-mousewhee.min.js 并将它们包含在您的 html 中。

    下载文件后,在代码中包含以下脚本。

    <script scr="jquery-3.6.0.min.js"></script>
    <script scr="jquery-mousewhee.min.js"></script>
    

    然后在你的 body 的 CSS 中包含(或任何你想要水平滚动的 div)

    overflow-y: hidden;
    

    最后,添加自定义脚本

    <script>
        $(document).ready(function() {
            $('html, body, *').mousewheel(function(e, delta) {
                this.scrollLeft -= (delta * 30);
                e.preventDefault();
            });
        });
    </script>
    

    完成

    注意:如果您想将竖线包含在后面,则需要修改代码。

    【讨论】:

    • 是的,这确实会导致滚动,但我的用户不会知道他们需要按 shift 键进行滚动,因为在这里操作不是很直观。有什么方法可以实现滚动而不需要按shift?
    • 对不起,我误读了这个问题。我刚刚提供了新的解决方案。
    • 无论如何我都隐藏了垂直条,所以这对我来说是完美的。非常感谢您的帮助,这样就解决了!
    • 这怎么可能是一个被接受的答案?这涉及到 react-native 之上的 jQuery
    • jQuery 在这里是一个糟糕的解决方案
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-07-13
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多