模拟长按事件

30次阅读

共计 690 个字符,预计需要花费 2 分钟才能阅读完成。

如果你想在监测到用户在微信浏览器中长按图片的动作并进行统计,可以使用以下方法:
let $div = document.getElementById(‘divContent’);
let startTime = 0;
$div.addEventListener(‘touchstart’, function () {
startTime = +new Date();
})
$div.addEventListener(‘touchend’, function () {
let endTime = +new Date();
if (endTime – startTime > 600) {
// 你的操作
}
})
但是这种方法在安卓微信浏览器中,当 touchstart 事件持续到弹出选择框后,touchend 事件会被中断,所以可以采取下一种方法:
let $div = document.getElementById(‘divContent’);
let startTime = false;
$div.addEventListener(‘touchstart’, function () {
startTime = true;
setTimeout(function(){
if (startTime) {
console.log(‘ 已长按 ’)
} else {
console.log(‘ 没长按 ’)
}
startTime = false;
}, 500)
})
$div.addEventListener(‘touchend’, function () {
startTime = false;
})
$div.addEventListener(‘touchmove’, function () {
startTime = false;
})

正文完
 0