安卓滑屏的bug。分析一下,如此这般:


滑屏误触的问题

1
2
3
4
5
6
7
8
(function(){
var box=document.querySelectorAll('.box');
for(var i=0;i<-box.length;i++){<br>
box[i].addEventListener('touched',function(e){
alert(1);
});
}
})();

解决方案:自己封装一个tab事件

1
当用户抬起手时,判断用户有没有进行过滑动,如果用户进行过滑动,就不算点击

解决思路

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
1)声明变量记录用户是否进行过滑动;
2)touchmove中记录用户进行了滑动;
3)touched对该变量进行判断。

eg:
function tab(el,fn){
var move=false;
el.addEventListener('touchmove',function(e){
move=true;
});
el.addEventListener('touchmove',function(e){
if(!move){
fn&&fn.call(el,e);
}
move=false;
})
}

有点困了今晚就先到这咯~~~