编程语言
首页 > 编程语言> > jQuery中的javascript – offsetParent()没有返回预期的相对定位祖先

jQuery中的javascript – offsetParent()没有返回预期的相对定位祖先

作者:互联网

我有一些HTML具有以下近似结构和定位:

<div class="grand-parent" style="position: absolute">
  <div class="parent" style="position: relative">
    <div class="child"></div>
  </div>
</div>

在我的jQuery小部件中,我正在尝试插入位于小部件所针对的元素的“偏移父级”内的元素.为此,我基本上有这样的代码:

var targetElement = $('.child');
$('<div/>').appendTo(targetElement.offsetParent());

不幸的是,该元素似乎是作为.grand-parent的子元素而不是父元素插入的.我对offsetParent()(以及文档似乎支持这一点)的理解是offsetParent()应该返回.parent,因为它是相对的.我对offsetParent的理解是不正确的,还是jQuery存在问题(我使用的是1.4.1).

解决方法:

根据https://developer.mozilla.org/en/DOM/element.offsetParent,如果未显示父级(display:none),则offsetParent无法正常工作.就我而言,容器元素就是这样.

标签:jquery,javascript,positioning,offset
来源: https://codeday.me/bug/20190531/1188146.html