整页.js触摸滚动固定元素
FullPage.js touch scrolling over fixed element
我正在使用整页.js为我的网站。我在整页容器上方有一个固定(水平和垂直居中)元素,因此当我在移动设备上滑动该固定部分时,整页无法识别触摸事件。滚动工作正常。
当固定的div 位于整页容器外部时,即使它们位于内部,也存在此问题。我正在使用"固定元素"参数表:
fixedElements: '.circleWrapper',
我是否应该以某种方式将触摸事件绑定到整页容器?
所以我尝试在整页.js配置上css3: false
但没有让它工作,所以我找到了简单的解决方案来使用
pointer-events: none;
在我的元素上,在整页幻灯片的前面。这是我找到的解决我问题的最简单的解决方案。有关我的实施的任何问题,请询问!
整页.js触摸事件只能在插件的包装器本身内工作。通常人们不希望在页眉或页脚上滑动会滚动页面。
您有两种选择:
- 使用
css3:false
并将固定元素放置在 fullpage.js 容器中,这样它们就会收到滑动事件,并且不会在包装器内造成问题,因为插件不会使用 translate3d 属性。修改整页.js以实现自己的目的。为此,请修改函数
addTouchHandler
和removeTouchHandler
并更改$(document)
的$(WRAPPER_SEL)
:/** * Adds the possibility to auto scroll through sections on touch devices. */ function addTouchHandler(){ if(isTouchDevice || isTouch){ //Microsoft pointers var MSPointer = getMSPointer(); $(document).off('touchstart ' + MSPointer.down).on('touchstart ' + MSPointer.down, touchStartHandler); $(document).off('touchmove ' + MSPointer.move).on('touchmove ' + MSPointer.move, touchMoveHandler); } } /** * Removes the auto scrolling for touch devices. */ function removeTouchHandler(){ if(isTouchDevice || isTouch){ //Microsoft pointers var MSPointer = getMSPointer(); $(document).off('touchstart ' + MSPointer.down); $(document).off('touchmove ' + MSPointer.move); } }
相关文章:
- 指示禁用元素滚动行为并改为滚动页面
- 在某个点停止固定元素滚动
- jQuery 航点在元素滚动到视图中时添加类
- 到达(窗口)上的中间元素.滚动
- 当元素滚动出屏幕时更改元素位置
- jQuery-将元素滚动到屏幕中间,而不是使用锚链接滚动到顶部
- 我想为一个元素添加一个事件监听器,当相应的元素滚动到视图中时,该监听器就会被激发
- 将元素滚动到页面底部的视图中
- fadeIn元素滚动
- 当光标到达底部时,有没有办法防止contentEditable元素滚动
- 固定元素滚动到Div
- 如何平滑地防止固定元素滚动经过指定元素
- 将所有HTML元素滚动到视图中
- 如果浏览器窗口高度为X,并且元素滚动到其中的X点,则合并条件
- 使用isroll4将最后一个元素滚动到第一个元素的开始位置
- 如何显示单独的锂元素滚动基于窗口的高度
- 根据所单击的元素滚动到页面上的相同位置
- 元素滚动的同时滚动另一个
- 修改jQuery.ScrollTo插件将元素滚动到页面中心(垂直/水平)或尽可能靠近中心
- 我如何检测一个元素滚动到视窗