我正在使用:
$(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
:
相对于文档左边缘的鼠标位置。