再一次:点击手机图像后获取鼠标坐标
Yet again: getting mouse coordinates after click on an image for mobile
点击某个点上的图像后,我想获得该点相对于图像左上角的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)。
相关文章:
- 当鼠标停止或改变方向时获取鼠标坐标
- Javascript如何在不使用画布的情况下获取鼠标位置
- 在火狐浏览器的画布上获取鼠标位置
- 画布:当存在*border*时,获取鼠标坐标
- 试图用jquery工具在覆盖层上获取鼠标悬停
- 如何在Fabric.js上获取鼠标坐标
- 如何在相对定位的元素内获取鼠标的坐标
- 在离子弹出窗口上传递值,但获取鼠标事件
- 如何在 Javascript 中正确获取鼠标位置
- 谷歌地图v3获取鼠标滚轮事件
- 在鼠标按下期间获取鼠标位置
- 如何在火狐中获取鼠标位置
- OpenLayers 3 在选择交互时获取鼠标坐标
- 在 Telerik ASP.Net UI 客户端中,如果我以内联方式附加客户端事件,如何获取鼠标事件对象
- 获取鼠标单击位置坐标
- 使用 d3 获取鼠标点击 svg 的坐标
- 离子和AngularJS - 拖动元素并移动它 - 如何获取鼠标位置
- 如何在Javascript/jQuery中获取鼠标移动事件的开始时间
- 如何在没有JQuery的情况下使用JavaScript正确获取鼠标坐标
- 获取鼠标按下和鼠标移动事件中的鼠标位置