zoukankan      html  css  js  c++  java
  • 移动端click事件无反应或反应慢 touchend事件页面滑动时频繁触发

    H5页面的点击事件click 无论在浏览器 iframe还是小程序里面 都会出现点击无反应或者反应慢的情况出现

    所以决定用touchend事件来代替click

    但是touchend事件触发比较灵敏 在滑动页面时 如果不小心触碰有touchend事件的元素都会触发

    尤其是在满屏都有touchend元素的页面中 只要稍有滑动都会触发该事件 很无奈

    解决方法如下:

    监听滑动事件 在滑动事件里面阻止touchend事件

       function stopTouchendPropagationAfterScroll() {
    
          var locked = false;
    
          window.addEventListener('touchmove', function() {
            locked || (locked = true, window.addEventListener('touchend', stopTouchendPropagation, true));
          }, true);
    
          function stopTouchendPropagation(ev) {
            ev.stopPropagation();
            window.removeEventListener('touchend', stopTouchendPropagation, true);
            locked = false;
          }
        }
    
        var divs = $(".go");
        stopTouchendPropagationAfterScroll();
        divs.on("touchend", function() {
          alert('触发touchend')
    });
  • 相关阅读:
    26.列表的循环遍历
    效率比较--链表
    心之距离 再回首 光年之遥远
    效率比较--集合
    效率比较--数组
    哈希表
    栈 VS 队列
    struts1 标签引入
    web 连接池配置
    zip&ftp命令
  • 原文地址:https://www.cnblogs.com/luffyc/p/10573101.html
Copyright © 2011-2022 走看看