6

可能重复:
jQuery 获取元素内的鼠标位置

我有一个页面,在该页面内我有一个 div。如果用户在该 div 内单击,它将存储他们在该 div 内单击的位置的 X/Y 坐标。

例如,如果我单击 div 的左上角(无论 div 放在页面上的哪个位置),它都会返回大约 0、0。

这甚至可能吗?如果是这样,你能告诉我如何 - 甚至指出我正确的方向吗?

4

1 回答 1

14

使用pageX事件的属性获取相对于页面的x坐标和pageYy坐标,然后减去元素的坐标得到相对于元素的位置。

$( '#target' ).on( 'click', function( e ) {
    var x = e.pageX - this.offsetLeft;
    var y = e.pageY - this.offsetTop;
});​

演示:http: //jsfiddle.net/WhrFt/

jquery.com 官方教程:http://docs.jquery.com/Tutorials: Mouse_Position

于 2012-08-18T19:56:40.020 回答