Javascript 如何区分滚动事件和长按事件?
问题:Javascript 如何区分滚动事件和长按事件?,javascript,mobile,dom-events,Javascript,Mobile,Dom Events,问题: SomeDomElement.addEventListener('touchstart', function preventLongPress(event) { if (event.touches.length >=1) event.preventDefault(); }, false); 如果我使用:If(event.touchs.length>=1)event.preventDe
SomeDomElement.addEventListener('touchstart', function preventLongPress(event) {
if (event.touches.length >=1) event.preventDefault();
}, false);
如果我使用:If(event.touchs.length>=1)event.preventDefault()代码>则这将防止长按事件,但也会禁用滚动事件
长按不存在touchmove
或touchend
事件
我想要的:
SomeDomElement.addEventListener('touchstart', function preventLongPress(event) {
if (event.touches.length >=1) event.preventDefault();
}, false);
防止长按,但不防止滚动
N注意:我只使用香草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 */
});