我正试图找到一种从元素中心计算鼠标位置的方法。
我在鼠标悬停事件上已达到e.pageX
和e.pageY
,但我无法理解它相对于元素中心的位置。
我无法想到等式
答案 0 :(得分:2)
你需要首先得到物体的中心点,X& Y(代码中的objCenterX& objCenterY,下面),然后从鼠标的当前坐标中减去它。
这应该适合你:
$("#test").mousemove(function (event) {
var objLeft = $("#test").offset().left;
var objTop = $("#test").offset().top;
var objCenterX = objLeft + $("#test").width() / 2;
var objCenterY = objTop + $("#test").height() / 2;
$("#results").text("Left:" + (event.pageX - objCenterX) + ", Top:" + (event.pageY - objCenterY));
})