我正在构建一个基于Phonegap的Android / iOS应用程序。该应用程序应该检测用户的滑动。
在Android上,当检测到手势时,应用会在执行我的代码之前始终显示大约 200ms 的延迟。
阅读时,我了解到这种延迟可能是由于Android将滑动与普通水龙头区分开来的。如果您在触摸后经过200毫秒之前拨打e.preventDefault()
,WebKit会让您将其作为滑动进行处理。
问题:
有没有办法彻底删除此延迟并强制WebKit假设事件是滑动,从而消除延迟?
答案 0 :(得分:0)
实际上,延迟大约是300毫秒,在本文[1]中,给出了浏览器OEM实现此行为的原因。 有一个名为fastclick [2]的库可以用来防止这种情况发生。 就个人而言,我使用的聚合物手势范围更广,但整体上解决了检测手势和阻止300ms延迟的问题。
[1] http://updates.html5rocks.com/2013/12/300ms-tap-delay-gone-away