Javascript 如何在HTML5画布上单击坐标?
我需要得到我点击HTML5画布元素的x和y坐标。我对y坐标执行了以下操作:Javascript 如何在HTML5画布上单击坐标?,javascript,jquery,html,canvas,Javascript,Jquery,Html,Canvas,我需要得到我点击HTML5画布元素的x和y坐标。我对y坐标执行了以下操作: $("#my_canvas").click(function(event) { alert(Math.floor(event.clientY-$(this).offset().top)); }); 这给出了正确的y坐标。问题是如果向下滚动,clientY会变小,因为它似乎在测量屏幕上的y坐标,而忽略了滚动。所以上面给出了一个负数 获取x和y坐标的正确方法是什么?使用而不是clientY,这样您比较的
$("#my_canvas").click(function(event) {
alert(Math.floor(event.clientY-$(this).offset().top));
});
这给出了正确的y坐标。问题是如果向下滚动,clientY
会变小,因为它似乎在测量屏幕上的y坐标,而忽略了滚动。所以上面给出了一个负数
获取x和y坐标的正确方法是什么?使用而不是clientY
,这样您比较的两个坐标都是相对于文档的:
event.pageY-$(this).offset().top
您还可以将
$(document.scrollTop()
计入顶部偏移量。我认为这与html5和画布无关