在我的 Android 应用程序中,用户可以使用 ViewPager 浏览一些 HTML 页面,并且用户可以触摸一个元素来突出显示。
问题是当尝试使用以下代码使用 javascript 获取触摸事件时,elementFromPoint 在导航到新页面时返回 null,但是在用户缩放页面或滚动页面后,它可以正常工作。
我发现 touchstart 事件的注册发生在缩放或滚动页面之后。所以它在那之后就可以工作了,尽管它是在 $(document).ready() 上注册的
$(document).ready(function(){
document.addEventListener("touchstart", touchstart, false);
});
function touchstart(e) {
var x = e.targetTouches[0].clientX;
var y = e.targetTouches[0].clientY;
el = document.elementFromPoint(x, y);
}
谢谢