如果元素大于屏幕,则相对鼠标位置

Relative mouse position if element bigger than screen

如何获取当前鼠标相对于比 jQuery 屏幕大的 div 元素的位置?

在我的示例中,用户可以在 x 轴和 y 轴上滚动,但如果他单击,我想获得相对于 divs 原点的鼠标位置,而不仅仅是 pageX 和 pageY。

您可以使用大父元素的偏移量:

var relOffset = $(event.target).offset();
var mousePos = {
    x: event.pageX,
    y: event.pageY
};
var resultPos = {
    x: event.pageX - relOffset.left,
    y: event.pageY - relOffset.top
}

这是带有示例的 jsfiddle:http://jsfiddle.net/sx8efuyt/