tap事件原理

本文介绍了一个简单的HTML页面,其中包含一个粉色背景的div元素。通过JavaScript实现了触摸事件的监听,包括touchstart、touchmove和touchend,用于识别快速点击手势(tap事件)。此实现通过检查两次触摸事件之间的间隔时间和是否发生了移动来判断。
	

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>手势事件</title>
    <style>
        .box {
            width: 320px;
            height: 500px;
            background-color: pink;
        }
    </style>
</head>
<body>

    <div class="box">

    </div>
    <script>

        window.onload=function () {
            var box=document.querySelector('.box');
            var bindSwipeEvent=function (dom,fn) {
                var startDate=null;
                var bolMove=false;
                dom.addEventListener('touchstart',function (e) {
                    /*开始触摸*/
                    startDate=Date.now();
                });
                dom.addEventListener('touchmove',function (e) {
                    /*触摸移动*/
                    bolMove=true;
                });
                dom.addEventListener('touchend',function (e) {
                   	/* 因为是手指点击,所以速度会快,并且没有触摸的事件产生 */
                    if ((Date.now()-startDate) <150 && !bolMove) {
                        fn && fn.call(this,e)
                    }
                    bolMove=false;
                    startDate=null;
                });

            }
            bindSwipeEvent(box,function (e) {
                console.log("tap事件"+this+e);
            });
        }


    </script>
</body>
</html>


评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值