我正在创建一个网页应用,其中包含带溢出的div:滚动样式。由于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设备。但是,在Android中,它没有。
使用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值。
感谢您的期待!
答案 0 :(得分:6)
请使用:
event.touches[0].pageY
而不是:
event.pageY
它会起作用。