Reputation: 1223
I try to insert into array all the classes
for example
<div class="class1">
<div class="class2">
<div class="class3">
<div id="class4">
</div>
</div>
</div>
</div>
And javascript
var a=document.getElementById("class4");
var b=new Array(a.parentNode.className,a.parentNode.parentNode.className,
a.parentNode.parentNode.parentNode.className);
for(i=0;i<b.length;i++)
{alert(b[i])}
This is work fine but my question is if I don't know how much parentNode there is to the class How can I loop all over the parentNode and insert it into the array?
Upvotes: 0
Views: 247
Reputation: 669
You can also use the .parents() jquery method http://api.jquery.com/parents/
Upvotes: 0
Reputation: 19153
function allParents(node) {
var arr = [];
while (node) {
arr.push(node);
node = node.parentNode;
}
return arr;
}
console.log(allParents(document.getElementsByClassName("class4")[0]));
Upvotes: 1