jQuery - 放置带偏移的div,然后再放置它=不同的结果

wax*_*cal 2 javascript jquery offset

我正在放置一个div,通过在页面上使用另一个div id作为参考(以确保它出现在我想要的位置).代码如下: -

$('#' + contentDiv).offset({top:($('#' + placementID).offset().top), left: ($('#' + placementID).offset().left)});
Run Code Online (Sandbox Code Playgroud)

问题是,虽然每次放置ID偏移数字是相同的.每当我再次调用它时,它似乎加倍并且在前一个偏移量的顶部放置一个新的左偏移量.

例如,我在点击时调用一个函数并说,请将此div放在此放置div旁边.它做到了.用户然后退出然后再执行一次单击,并使用相同的函数将另一个div放在同一个放置div旁边.它做到了,但不是将它放在与上次相同的位置,而是将上一次的位置作为0点引用并将剩余量添加到该位置.这意味着div现在距离很远.

请注意; 我已经安排了放置盒的顶部和左侧尺寸,并且每次都没有改变.

不知道发生了什么事.

wax*_*cal 5

如果有人遇到这种情况,我已经设法通过使用css而不是偏移来解决问题.即

$('#contentDiv').css({top:placeTop,left:placeLeft});
Run Code Online (Sandbox Code Playgroud)