定义一个简单的移动端轻击事件方法tap

/**
 * Created by liyingjiehao on 2016/9/18.
 */
/*定义一个tap方法,轻击方法
 * 1.touchstart与touchend之间  的时间小于  150ms
 * 2.并且不能触发touchmove方法
 * 满足上面两个条件之后才认为是一个tap事件,才允许执行callback函数
 * */
 window.itly= {
    tap: function (dom, callback) {
        var startTime = 0;
        var isMove = true;
        dom.addEventListener("touchstart", function () {
            /*记录触摸的时间*/
            startTime = Date.now();
        });
        dom.addEventListener("touchmove", function () {
            /*判断用户是都做了滑动*/
            isMove = false;
        });
        dom.addEventListener("touchend", function (e) {
            /*触摸时间与手指离开的时间间距要小于150ms才认为是轻击事件*/
            if (isMove && (Date.now() - startTime) < 150) {
                callback && callback(e);
            }
            /*重置参数*/
            isMove = true;
            startTime = 0;
        });
    }
}

 

转载于:https://my.oschina.net/itly/blog/748209

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值