Skrollr页面上的移动导航栏水平滚动

时间:2016-09-08 17:02:53

标签: javascript html css parallax skrollr

我的移动导航栏位置固定在屏幕底部并向右溢出。我希望能够水平滚动它,但是,skrollr似乎正在捕获滚动事件并将其转换为垂直滚动。

禁用skrollr后,我可以水平滚动导航栏。

我尝试尽可能高地使用导航栏的zindex,但是skrollr仍然可以触摸它。

这有可能吗?

编辑:

想上传一份我想要达到的草图,以便更清楚。

叠加层位置固定,位于屏幕底部,z索引在所有内容之上,其内容溢出到右侧:

white-space: nowrap; overflow-x: auto; overflow-y: hidden;

在移动设备上,拖动叠加层开始滚动整个页面,叠加层不会向左右滚动。如果我使用鼠标水平滚轮,它会滚动,但不会触摸。

enter image description here

1 个答案:

答案 0 :(得分:0)

设法通过阻止覆盖元素上的touchmovetouchstarttouchend事件的传播来解决此问题:

$overlay.on('touchmove touchstart touchend', function(e) { e.stopPropagation(); });

这打破了覆盖层内部的任何链接,但添加了一个虚拟侦听器来修复它:

$overlayLinks.on('touchmove touchstart touchend', function() { return true; });