【问题标题】:FullPageJS prevents touch scrolling on hamburger menu; how to integrate?FullPage JS 防止汉堡菜单上的触摸滚动;如何整合?
【发布时间】:2019-03-25 13:23:31
【问题描述】:

我有一个使用了不起的 fullPageJS 插件的网站,它的功能非常非常好。

但是,我在移动设备上遇到了一个问题,当菜单高度超过 ViewPort 的高度时,滑动汉堡菜单无法通过触摸控件滚动,如下图所示:

问题

如何强制侧边菜单接受基于触摸的滚动?

【问题讨论】:

    标签: css wordpress fullpage.js hamburger-menu


    【解决方案1】:

    您应该使用名为 normalScrollElements 的 fullpage.js 选项。

    详见fullpage.js docs

    normalScrollElements:(默认null)如果您想在滚动某些元素时避免自动滚动,这是您需要使用的选项。 (对于地图、滚动 div 等很有用)它需要一个带有 Javascript 选择器的字符串来用于这些元素。 (例如:normalScrollElements: '#element1, .element2')。此选项不应应用于任何部分/幻灯片元素本身。

    另外,您可以在打开模态时调用fullpage_api.setAllowScrolling(false)。这将防止 fullpage.js 在使用鼠标滚轮或触控板时向上或向下滚动。

    您可以在关闭菜单时使用fullpage_api.setAllowScrolling(true)将其设置回默认值。

    【讨论】:

    • 等等 - 你是插件的作者?为什么,非常感谢您前来救援!
    • 是的!就是我!
    • 既然你在这里,我很好奇 - 什么 CSS 控制着移动设备的触摸功能滚动能力?我尝试自己更改元素的属性,但无济于事。
    【解决方案2】:

    如果您还没有添加overflow: scroll,请尝试添加。

    【讨论】:

    • 当然是我尝试的第一件事;它已经有了。它不是那么简单 - 它确实使用鼠标滚轮滚动,但不使用触摸模拟滚动。
    • 你检查z-index了吗?
    • 那个也是。我尝试了所有基本的东西 - 它适用于常规滚动,但不适用于触摸滚动。
    • 它不适用于移动设备上的 safari 和 chrome?两者都有?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-02-16
    • 2021-06-14
    相关资源
    最近更新 更多