模拟浏览器长按事件

因为js没有长按事件,所以我们需要模拟长按事件,核心是利用touchstart和touchend事件加一个定时器解决。

1、代码(在vue中)

因为我是在vue中用的,道理一样

//html
//prevent取消浏览器默认长按事件。
<div style="width: 40px;height: 40px;background-color: #0a76a4" @touchstart.prevent="touchstartFn" 
     @touchend.prevent="touchendFn"></div>

//js
data(){
    return{
        longClickTimer:''
    }
},
methods:{
    touchstartFn(){
        this.longClickTimer = setTimeout(()=>{
            alert('长按操作')
        },700)
    },
    touchendFn(){
        clearTimeout(this.longClickTimer)
    }
},
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容