iScroll左右滑动阻止内容上下滑动 e.preventDefault() 解决办法

最近写了一个下拉加载(新闻列表页面和详情页面在同一个页面)这个事件真的让我调试了很久,才找到了原因


问题:页面下拉不了

window.addEventListener('touchmove', function (e) { e.preventDefault(); }, false);


1:在onBeforeScrollStart: function (e) { e.preventDefault(); }, 修改为onBeforeScrollStart: null,
2:在_move方法里增加(大小可根据需要自行修改)
if(newY>=-10 && newY<=10){e.preventDefault();}
3.lockDirection  设置为true(正常默认就是为true,可不用修改)

注意点:要注意在自己的脚本里面没有对全局的移动事件进行阻止默认事件,如
document.addEventListener('touchmove', function (e) {
//  
//  //取消事件的默认动作
//  e.preventDefault();
//  
// }, false);

如果在外层有这个事件,那你插件里面怎么改可能都没用。



这2个事件我都写了 所以一直下拉不了  去掉e.preventDefault()事件就可以了

你可能感兴趣的:(web)