问题:
SomeDomElement.addEventListener('touchstart', function preventLongPress(event) {
if (event.touches.length >=1) event.preventDefault();
}, false);
如果我使用 :if (event.touches.length >=1) event.preventDefault();
那么这会阻止长按事件,但也禁用滚动事件。
长按没有touchmove
或touchend
事件。
我想要的:
防止长按,但不防止滚动
Note :我只使用原版 Javascript,没有 jQuery
希望这对您有所帮助。
document.addEventListener("touchstart", function(){
detectTap = false;
});
document.addEventListener("touchmove", function(){
detectTap = true;
});
document.addEventListener("touchend", function(){
if(detectTap)
alert("scrolled"); /* here add whatever functionality you wants */
else
alert("long pressed"); /* here add whatever functionality you wants */
});