直接使用本机JavaScript或jQuery方法获取元素的包含块

直接使用本机JavaScript或jQuery方法获取元素的包含块,javascript,jquery,Javascript,Jquery,是否有一个内置的domapi或jquery来获取元素的名称 我不是问如何获取元素的包含块。我只是问是否已经有了轮子,这样我就不必重新发明了。如果没有,我可以做: let containingBlock = $("#five") .parents() .find(parent => parent.css("position") === ...); 例如,对于以下HTML: <div id = "o

是否有一个内置的domapi或jquery来获取元素的名称

我不是问如何获取元素的包含块。我只是问是否已经有了轮子,这样我就不必重新发明了。如果没有,我可以做:

let containingBlock = $("#five")
                      .parents()
                      .find(parent => parent.css("position") === ...);
例如,对于以下HTML:

<div id = "one">
    <div id = "two" style = "position: absolute;">
        <div id = "three">
            <div id = "four">
                <div id = "five" style = "position: absolute;"></div>
            </div>
        </div>
    </div>
</div>


您可以使用
offsetParent()
获取定位的最近父元素。根据,它在父元素定位为
绝对
相对
、或
固定
时起作用,但对我来说,它也适用于
粘性
定位

保重:父母有任何

  • 变换
    或透视值,而非无
  • 将更改变换或透视的值
  • filter
    值非none或
    将更改filter的值(仅适用于Firefox)
  • A
    contain
    油漆值(例如contain:paint;)
同时,带有
背景滤镜的父级(我发现很难)也将成为包含块


参考资料:

用JQuery代替
.parents()
?对于两位评论员(KIKO软件和Abana Clara),父对象与包含的块不同。问题不是如何获取对HTML元素的父元素的引用。哇!非常感谢。正是我想要的。