代码描述:JavaScript 移动端 右划事件 浏览器右划 回退冲突 解决方案。JavaScript移动端右划事件与浏览器右划回退冲突解决方案
众多浏览器都有右划回退默认事件,在某些机型上直接绑定touchstart跟touchend判断滑动距离即可,但是有些机型(华为Meta7)完全无效。如果在弹出的右侧菜单需要在右划时隐藏改菜单,可能会出现冲突现象,下面介绍一下如何解决此问题。 代码实例如下:
<script> $('#Box').on("touchstart", function(n) { var r = n.touches[0]; t = r.clientX; i = r.clientY; stime = new Date().getTime(); console.log('touchstart'); }).on("touchmove", function(n) { var evt = n || window.event; if (evt.preventDefault) { evt.preventDefault(); } else { evt.returnValue = false; } }).on("touchend touchcancel", function(n) { console.log('touchstart'); var u = n.changedTouches[0], f = u.clientX - t, e = u.clientY - i; f > 50 && Math.abs(e) < 30 && $("#Box").hide(); }); </script>
请绑定手机号,在继续操作
注意:只有绑定手机以后,才可使用网站全部功能