我的移动导航栏位置固定在屏幕底部并向右溢出。我希望能够水平滚动它,但是,skrollr似乎正在捕获滚动事件并将其转换为垂直滚动。
禁用skrollr后,我可以水平滚动导航栏。
我尝试尽可能高地使用导航栏的zindex,但是skrollr仍然可以触摸它。
这有可能吗?
编辑:
想上传一份我想要达到的草图,以便更清楚。
叠加层位置固定,位于屏幕底部,z索引在所有内容之上,其内容溢出到右侧:
white-space: nowrap; overflow-x: auto; overflow-y: hidden;
在移动设备上,拖动叠加层开始滚动整个页面,叠加层不会向左右滚动。如果我使用鼠标水平滚轮,它会滚动,但不会触摸。
答案 0 :(得分:0)
设法通过阻止覆盖元素上的touchmove
,touchstart
和touchend
事件的传播来解决此问题:
$overlay.on('touchmove touchstart touchend', function(e) {
e.stopPropagation();
});
这打破了覆盖层内部的任何链接,但添加了一个虚拟侦听器来修复它:
$overlayLinks.on('touchmove touchstart touchend', function() {
return true;
});