iscroll块遇到原生滑动不能滑

来源:互联网 发布:抓包后怎么看mac地址 编辑:程序博客网 时间:2024/05/16 07:13

这种情况是因为iscroll屏蔽了原生的操作使用了event.preventDefault();所以我们可以针对这个判断是否需要调用这个方法,在iscroll源码里可以找到_start和_move防范,里面都有event.preventDefault()

_start方法:

_move

if ( this.options.preventDefault ) { // increases performance on Android? TODO: check!
if(!($(e.target).hasClass('eventNotDo') && (Math.abs(this.distX) > Math.abs(this.distY) + this.options.directionLockThreshold))){
e.preventDefault();
}

}

我们可以做个判断在不需要的时候跳过这个屏蔽,其中(Math.abs(this.distX) > Math.abs(this.distY) + this.options.directionLockThreshold)是用来判断是否是水平滑动,因为这里的案例是iscroll里面用到了原生的水平滑动不起作用

0 0