Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Check if div is descendant of another

Tags:

javascript

Best way to find out if element is a descendant of another there is another question, very similiar to this one but its jquery.

so, how do I do it in js ? I have divs a, b, c, d nested in this order. also, not sure if matters, there is another a, b, c... and another. its not just a single element. there is many by same id/class.

so I want to see if d has a parent(no matter how deep it is nested, as long as there is some parent on top its ok) called a.

edit: also, I had this idea that I could check childnodes of "a" and see if "d" is one of them, but couldnt implement it. if someone can get it working, itd be awesome.

like image 362
purplecircles Avatar asked Jul 21 '13 15:07

purplecircles


2 Answers

You can use node.contains to check if a node contains another node. https://developer.mozilla.org/en-US/docs/Web/API/Node.contains

like image 169
vsr Avatar answered Oct 11 '22 18:10

vsr


If you want to use pure javascript use node.contains.

e.g.

var a = document.getElementById('a'); var d = document.getElementById('d') if (a.contains(d)) {     alert('d is a child of a'); } 

Fiddle: http://jsfiddle.net/FlameTrap/pwVPC/

like image 25
Flame Trap Avatar answered Oct 11 '22 18:10

Flame Trap