可能重复:
jQuery获取元素内鼠标位置
我有一个页面,在页面内有一个div。如果用户在该div内点击,它将存储他们在该div内点击的X/Y坐标。
例如,如果我在div的左上角点击(无论div放置在页面的哪个位置),它将返回大约0, 0。
这是否可能?如果可以,你能告诉我如何实现吗?或者甚至指点我正确的方向?
可能重复:
jQuery获取元素内鼠标位置
我有一个页面,在页面内有一个div。如果用户在该div内点击,它将存储他们在该div内点击的X/Y坐标。
例如,如果我在div的左上角点击(无论div放置在页面的哪个位置),它将返回大约0, 0。
这是否可能?如果可以,你能告诉我如何实现吗?或者甚至指点我正确的方向?
使用事件的 pageX
属性获取相对于页面的 x 坐标,使用 pageY
获取 y 坐标,然后减去元素的坐标即可得到相对于该元素的位置。
$( '#target' ).on( 'click', function( e ) {
var x = e.pageX - this.offsetLeft;
var y = e.pageY - this.offsetTop;
});
示例: http://jsfiddle.net/WhrFt/
jquery官方教程: http://docs.jquery.com/Tutorials:Mouse_Position