ps:
- @click点击事件,一直按着就不会触发(应该知道@click点击事件时松手了才会触发@click事件吧),当按的时间超过一定时间后@click点击事件就会失效(害,我也不知道多久,肯定没有一秒就对了)
- @touchstart 当你刚触碰到的时候 立马触发
- @touchend 当你松开的时候 立马触发
- 当@touchstart触发时间里有类似于alert(‘123’)的玩意时,你的@click、@touchend会失效
一、在data里加
Loop:'',
二、在要点击的元素里加上这@touchstart、@touchend两个属性
<div @touchstart="showDeleteButton" @touchend="clearLoop">
三、调用的方法
// 长按刚开始的时候
showDeleteButton() {
console.log("刚开始按时触发");
clearInterval(this.Loop);//清理掉计时器,防止重复注册定时器
this.Loop=setTimeout(function(){
console.log("按过的0.5秒后触发");
},500);
},
// 长按松手的时候
clearLoop() {
console.log("松手时触发");
//松手就清理掉计时器,也就是如果长按时间没到0.5秒,则取消长按事件的触发
clearInterval(this.Loop)
},