移动端原生事件

1.1 移动端原生事件

  • touchstart : 手指按下

  • touchmove:手指一动

  • touchend:手指离开

  • 注意:使用事件绑定的方式添加移动端事件

    //1.添加移动端事件
    oDiv.addEventListener("touchstart",function(){
        console.log("手指按下");
    });
    oDiv.addEventListener("touchmove",function(){
        console.log("手指移动");
    });
    oDiv.addEventListener("touchend",function(){
        console.log("手指离开");
    })
    

1.2 pc端事件在移动端延迟300ms触发

//1.添加移动端事件
//pc端事件在移动端触发会慢 300ms
oDiv.addEventListener("touchend",function(){
    console.log("end"+Date.now());
});
oDiv.addEventListener("mouseup",function(){
    console.log("aup"+Date.now());
});

点透问题:

<a href="https://www.baihe.com/">百合网</a>
<div></div>
//点透事件  点击div隐藏后能够点击到下面有连接的a标签,进行跳转
//touchend事件发生的时候,其实也会触发touchstart,click,只不过没有添加事件就没有事件处理而已
//touchend : 隐藏div
//click : 慢了一点点发生,当时的div已经消失,隐藏就点击到了a链接进行了跳转

//解决:div延迟300ms消失
//1.点击div,隐藏div
oDiv.addEventListener("touchend",function(){
    setTimeout(function(){
        oDiv.style.display = "none";
    },300)
})

1.3 移动端事件对象

 //1.添加移动端事件
oDiv.addEventListener("touchstart",function(ev){
    var ev = window.event || ev;
    console.log(ev.touches); //位于屏幕上的手指列表
    console.log(ev.targetTouches); //位于当前元素上的手指列表
    console.log(ev.changedTouches); //事件相关的手指列表信息

    var touch = ev.changedTouches[0];
    console.log(touch.clientX); //鼠标位置
    console.log(touch.clientY);
});
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值