众多浏览器都有右划回退默认事件,在某些机型上直接绑定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>

代码描述:JavaScript 移动端 右划事件 浏览器右划 回退冲突 解决方案。JavaScript移动端右划事件与浏览器右划回退冲突解决方案



283 377



用户评论
大牛,别默默的看了,快登录帮我点评一下吧!:)      登录 | 注册



×
×
51前端

注册

×
绑定手机

请绑定手机号,在继续操作

×
单次下载支付

应付金额:279

支付完成后,回到下载页面,在进行下载

官方QQ群
意见反馈
qq群

扫描上面二维码加微信群

官方QQ群

jQuery/js讨论群
群号:642649996
Css3+Html5讨论群
群号:322131262

加群请备注:从官网了解到