老醒
老醒
  • 发布:2016-06-29 19:41
  • 更新:2016-10-20 13:14
  • 阅读:2332

【报Bug】mui slider 内容出现滚动条时,滚动时经常触发跳到下一页(上一页)

分类:MUI
mui

详细问题描述
[内容]
mui slider 内容出现滚动条时,滚动内容的时候经常页面就左右滑动到下一页了
重现步骤
[步骤]
1.先左右滑动到下一页(中间的任意一页);
2.然后手指正常上下滚动屏幕;
[结果]
1.手指偏右上或右下滚动屏幕,就会跳到上一页;
2.手指偏左上或左下滚动屏幕,就会跳到下一页;
[期望]

希望能在屏幕滚动的时候,禁止左右滑动

运行环境
[系统版本]
ios9.3.2,android5.1.1
[浏览器版本]
[IDE版本]
HBuilder
7.2.2.201606152019
[mui版本]
Mui v3.1.0

附件
[代码片段]

                      <div id="slider" class="mui-slider" >  
              <div class="mui-slider-group">  
              </div>  
              <div class="mui-slider-indicator">  
              </div>  
            </div>
                       mui.ready(function (){  
                var group=mui("#slider .mui-slider-group")[0];  
                var indicator=mui("#slider .mui-slider-indicator")[0];  
                var ktpl=mui("#ktpl")[0].innerHTML;  
                var mtpl=mui("#mtpl")[0].innerHTML;  
                for(var i=0; i<10; i++){  
                    var div=document.createElement('div');  
                    div.id=i;  
                    div.className="mui-slider-item";  
                    if(i%2==0){  
                        div.innerHTML=ktpl;  
                    }else{  
                        div.innerHTML=mtpl;  
                    }  
                    group.appendChild(div);  
                    var idiv=document.createElement('div');  
                    idiv.className="mui-indicator "+(i==0?"mui-active":"");  
                    indicator.appendChild(idiv);  
                }  
                mui("#slider").slider();  
            });

[安装包]
附件是用hbuilder创建的重现问题的测试项目
联系方式
[QQ]
[电话]

2016-06-29 19:41 负责人:无 分享
已邀请:
2***@qq.com

2***@qq.com

同问,纠结我好久了

d***@163.com

d***@163.com

同求,这个问题的解决办法啊!
我也一直困惑!
我最初是想修改,mui.js里面的getAngle判断up、down、left、right,修改了以后,仍然无法达到我想要的效果。
后来我分析了一下,可能我的分析是错误的,slider,切换,是根据水平位置移动的位移到二分之一的时候或者水平方向上的速度达到一个值,这个值我还没有分析出来,就触发了slider的左右切换,与判断水平方向的角度无关。

我现在的思路是,监听window的swipe时间,当angle达到垂直方向上滑动的时候,就锁定左右移动,即此时,mui(“slider”).slider().setStoped(true),换句话说,就是锤子方向上移动,就不要触发水平移动了,但是这是想法,还没有实施,一会调试看看。还有一个问题,怎么恢复呢
难道是,mui(“slider”).slider().setStoped(false)???

该问题目前已经被锁定, 无法添加新回复