如何从Jquery中元素的中心计算鼠标位置

时间:2015-07-17 13:02:17

标签: jquery onmouseover mouse-position

我正试图找到一种从元素中心计算鼠标位置的方法。

我在鼠标悬停事件上已达到e.pageXe.pageY,但我无法理解它相对于元素中心的位置。

我无法想到等式

1 个答案:

答案 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));
    })