再一次:点击手机图像后获取鼠标坐标

Yet again: getting mouse coordinates after click on an image for mobile

本文关键字:获取 鼠标 坐标 图像 手机 再一次      更新时间:2023-09-26

点击某个点上的图像后,我想获得该点相对于图像左上角的x和y坐标。

在谷歌上搜索和堆叠之后,我用jquery找到了这个解决方案。

<html>
<script type="text/javascript" src="jquery.js"></script>
<body>
<!-- WEBSITE CONTENT -->
<img src="image.jpg" id="test">
<script>
$(document).ready(function() {
    $('#test').click(function(e) {
               var offset = $('#test').offset();
               var x=e.pageX - offset.left;
               var y=e.pageY - offset.top;
               alert(x+' '+y);
    });
});
</script>
</body>
</html>

好吧,这个代码似乎在非移动设备上运行得很好,但在一些移动设备上存在问题,因为它没有返回正确的坐标(至少pageY)。另一方面,即使是其他解决方案(基于screenX/Y的使用)似乎在移动设备上也存在问题。

所以,我想知道:

1) 有人知道一个适用于移动设备的强大解决方案吗?或者,

2) 有人知道一个变通方法,至少可以检测移动设备是否没有正确解释上面的代码?

也许页面被缩放了。当在窗口中时,它返回(2,2),也许在移动设备上它返回(1,1)。