j查询单击以查找位置 - 返回封装 div 未声明的 div



我正在使用:

$(document).ready(function(e) {    
$('.map').click(function(e) {
    var posX = $(this).position().left,posY = $(this).position().top; 
    $(".formX").val((e.pageX - posX))
    $(".formY").val((e.pageY - posY))
});
});

在地图中查找位置,但是返回的结果是包络项目的div 的位置,而不是声明的类

http://www.djnovainmobiliaria.com.mx/example/

当我删除div 时,它可以正常工作,并且无论页面上的位置如何,都会在div 内提供

坐标

http://www.djnovainmobiliaria.com.mx/example/without.html

尽管更改了数小时的 CSS z-index、定位等,但我还是无法弄清楚这一点。

我认为您想使用.offset()而不是.position()

来自 JQuery 文档的.position()

.position() 方法允许我们检索 相对于偏移父项的元素。与此形成对比 .offset(),它检索相对于 公文。

来自 JQuery 文档event.pageX

相对于文档左边缘的鼠标位置。

最新更新