$("#target").on({ touchstart: function(e) { // 长按事件触发 timeOutEvent = setTimeout(function() { timeOutEvent = 0; alert('你长按了'); }, 400); //长按400毫秒 // e.preventDefault(); }, touchmove: function() { clearTimeout(timeOutEvent); timeOutEvent = 0; }, touchend: function() { clearTimeout(timeOutEvent); if (timeOutEvent != 0) { // 点击事件 // location.href = '/a/live-rooms.html'; alert('你点击了'); } return false; } })
JS手机端移动端长按longtap事件
移动端并没有所谓的longtap事件,即长按事件。但是,有时候会用到,只能借助touchstart、touchmove、touchend三个事件以及延迟setTimeout来模拟一个longtap,下面就是代码(jQuery和zepto皆可使用,原生js也非常简单,就不写出来了):