0

我将鼠标移动到一个 div 上,我想知道鼠标相对于 div 原点的坐标。(左上角)

我希望 mousemove 事件包含鼠标的相对(客户端?)坐标,但显然它没有。

例如,在 Firefox 中,所有事件属性*都不包含相对坐标

我错过了什么吗?

*clientX,Y - pageX,Y - screenX, y

4

1 回答 1

0

你没有遗漏任何东西,但你需要自己计算相对坐标。

沿着这些思路应该做的事情(用你想用来获取位置的 w/e 代码替换 jquery):

var pos = $('div').position();
var relX = event.pageX - pos.left;
var relY = event.pageY - pos.top;

另请参阅:JS:鼠标相对于元素的坐标,其中涵盖了有关支持其他浏览器的一些细节(尽管如果您使用的是可能不需要的 jquery)。

于 2012-06-20T22:41:00.053 回答