如何使用jquery获取所有元素父项?

Amr*_*rhy 9 html javascript jquery dom

如何使用jquery获取所有元素父项?我想将这些父节点保存在变量中,以便稍后可以用作选择器.
比如<div><a><img id="myImg"/></a></div>
GetParents('myImg'); 将返回"div a"之类的东西

小智 8

///获取父元素的所有元素的数组:

allParents = $("#myElement").parents("*")
Run Code Online (Sandbox Code Playgroud)

///通过元素的父项获取嵌套选择器:

function GetParents(id) {
    var parents = $("#" + id).parents("*");
    var selector = "";
    for (var i = parents.length-1; i >= 0; i--) {
        selector += parents[i].tagName + " ";
    }

    selector += "#" + id;

    return selector;
}
Run Code Online (Sandbox Code Playgroud)

GetParents('myImage')将返回您的嵌套选择器:HTML BODY DIV AmyImage

请注意为什么你想要它,但它可以重复使用作为选择器.


Seb*_*Seb 6

你不需要抓取他们的选择器,因为你可以在之后使用jQuery直接使用它们.

如果您想稍后使用所有父母,您可以执行以下操作:

var parents = $("#element").parents();
for(var i = 0; i < parents.length; i++){
  $(parents[i]).dosomething();
}
Run Code Online (Sandbox Code Playgroud)