模仿长按事宜

假如你想在监测到用户在微信浏览器中长按图片的行动并举行统计,能够运用以下要领:

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;
})
    原文作者:不会飞的Porco
    原文地址: https://segmentfault.com/a/1190000017927348
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞