mousemove抓取嵌套元素的XY偏移量

时间:2015-02-18 19:54:08

标签: javascript jquery

我正在尝试将鼠标的XY位置放在父元素中。那部分很简单,什么让我失望的是当有一个嵌套元素时,它会抓住该嵌套元素中鼠标的XY位置。

我用一个非常简单的例子创建了一个JS小提琴:http://jsfiddle.net/htenchwv/

你可以看看我是如何用这个

拉出位置的
$(".parent").mousemove(function(event){
    $(".debug").html("X: "+ event.offsetX +"<br>Y: "+ event.offsetY);
});

您可以在X或Y位置看到,当您移动到子元素时,数字会跳下来。我不知道为什么或如何防止这种行为并且只在父元素中收集XY鼠标

1 个答案:

答案 0 :(得分:2)

您可以使用客户端X和Y,结合.offset()

Updated demo

$(document).ready(function($){
    $(".parent").mousemove(function(event){
        var pOffset = $(".parent").offset(),
            px = event.clientX - pOffset.left,
            py = event.clientY - pOffset.top;
        $(".debug").html("X: "+ px +"<br>Y: "+ py);
    });
});

HTH

-Ted