zoukankan      html  css  js  c++  java
  • 移动端长按响应事件以及阻止默认行为e.preventDefault()导致定时器setTimeout不能响应

    手指触摸绑定:

     1 $(document).on('touchstart', '.photo', function(e){
     2             currentIndex = parseInt($(this).index('.photo'));
             if (!timeoutEvent)
    3   timeoutEvent = setInterval("longPress()", 500);//如果是给类元素绑定长按,必须没有定时器的时候再生成定时器 4 e.preventDefault(); 5 }) 6 $(document).on('touchmove', '.photo', function(e){ 7 }) 8 $(document).on('touchend', '.photo', function(e){ 9 clearInterval(timeoutEvent); 10 timeoutEvent = 0; 11 e.preventDefault(); 12 })

    触发函数:

    function longPress() {
        clearInterval(timeoutEvent);
            alert('长按');
    
    })

    1、利用定时器很方便的进行相应长按触发

    2、用setInterval不用setTimeout,是e.preventDefault的这里的一个问题,组织默认事件行为会影响setTimeout而不会影响setInterval。

  • 相关阅读:
    python opencv PyQt5
    各大web服务器https的证书文件
    mysql 常用字符串操作
    python 修改字符串中的某一位字符
    python mysql
    小程序
    m4a 转MP3
    安装python 3.7
    树莓派版本信息
    bash 重启后台程序脚本
  • 原文地址:https://www.cnblogs.com/zxj95121/p/7928510.html
Copyright © 2011-2022 走看看