我在大 div 中有 2 个 div,小 div(可拖动)
我需要从大 div 左上角而不是从页面中找到小 div 位置计数。
大 div 位置可以在任何位置。(因为页面布局)
<div id='big'>
<div id='small'></div>
</div>
所以如果用户没有拖动小 div,位置将返回 0, 0
var top=$('#small').position().top;
alert(top);
我现在所拥有的是从页面返回位置,而不是从大 div
我在大 div 中有 2 个 div,小 div(可拖动)
我需要从大 div 左上角而不是从页面中找到小 div 位置计数。
大 div 位置可以在任何位置。(因为页面布局)
<div id='big'>
<div id='small'></div>
</div>
所以如果用户没有拖动小 div,位置将返回 0, 0
var top=$('#small').position().top;
alert(top);
我现在所拥有的是从页面返回位置,而不是从大 div
$(document).ready(function () {
$('#small').draggable({
containment: "parent"
});
$('#click').click(function () {
var rel_top = $("#small").css('top');
var rel_left = $("#small").css('left');
alert(rel_top + ', ' + rel_left);
});
});
$('#small').offset().top
您是否尝试使用 offset ?
在 jQuery 中获取元素的位置,我们有两种选择
抵消()
这始终与文档相关。
位置()
这总是相对于元素的偏移父级。
Offset Parent:是当前元素的父元素,它没有位置值 - 静态。它可以有任何其他位置值。
在您的情况下,添加position:relative
到大 div。
CSS 代码
#big { position : relative; }
然后position()
将给出小 div 相对于大 div 的位置。