Javascript 我如何让Android对触摸拖拽做出响应?

Javascript 我如何让Android对触摸拖拽做出响应?,javascript,android,browser,webkit,touch,Javascript,Android,Browser,Webkit,Touch,我正在创建一个web应用程序,它以div和overflow:scroll样式为特色。由于Android浏览器不支持这一点,我需要使用自己的自定义功能进行触摸和拖动 $([element]). .bind('touchmove', function(event) { event.preventDefault(); // Move elements around as page scrolls, using event.pageY }) .bind('touchstart', fun

我正在创建一个web应用程序,它以div和overflow:scroll样式为特色。由于Android浏览器不支持这一点,我需要使用自己的自定义功能进行触摸和拖动

$([element]).
.bind('touchmove', function(event) {
    event.preventDefault();
    // Move elements around as page scrolls, using event.pageY
})
.bind('touchstart', function(event) {
    event.preventDefault();
    // Do stuff to set up scrolling event.
}
这在iOS设备上运行良好。然而,在安卓系统中,情况并非如此

使用console.log,我发现event.pageY总是设置为零(在iOS中,它会告诉您触摸相对于页面其余部分的位置)。我还得到了以下神秘的信息:

W/webview (21798): Miss a drag as we are waiting for WebCore's response for touch down.
关于这方面的数据很少,但似乎在你取消触摸之前,Android实际上不会注册触摸事件。我不相信这一点,因为正常的页面滚动良好。我只是不知道如何让它识别pageY的真正价值,而不是忽略触摸的Y值

谢谢你的关注

请使用:

event.touch[0].pageY

而不是:

event.pageY


它会起作用。

很抱歉响应时间长了。一周前,当我重新开始这项工作时,我的一位同事给我指出了同样的解决方案,它成功了——非常感谢!如果你能接受这个答案,对每个人都有帮助。