ancestors,descendants jquery

ancestors,descendants jquery

by Mani Deep

HTML

<body class="ancestors"> body (great-great-grandparent)
  <div style="width:500px;">div (great-grandparent)
    <ul>ul (grandparent)  
      <li>li (direct parent)
        <span>span</span>
      </li>
    </ul>   
  </div>
</body>
<!--descendants start-->
<div class="descendants" style="width:500px;">div (current element) 
  <p class="1">p (child)
    <span>span (grandchild)</span>     
  </p>
  <p class="2">p (child)
    <span>span (grandchild)</span>
  </p> 
</div>
<!--descendants-->

CSS

.ancestors * { 
    display: block;
    border: 2px solid lightgrey;
    color: lightgrey;
    padding: 5px;
    margin: 15px;
}

.descendants * { 
    display: block;
    border: 2px solid lightgrey;
    color: lightgrey;
    padding: 5px;
    margin: 15px;
}

JavaScript

$(document).ready(function(){
    //up
    //$("body div ul li span").parent().css({"color": "red", "border": "2px solid red"});
    //$("span").parents().css({"color": "red", "border": "2px solid red"});
    //$("span").parents("ul").css({"color": "red", "border": "2px solid red"});
    //$("span").parentsUntil("div").css({"color": "red", "border": "2px solid red"});
    //down
    //$("div").children().css({"color": "red", "border": "2px solid red"});
    //$("div").children("p.1").css({"color": "red", "border": "2px solid red"});
    //find
    //$("div").find("span").css({"color": "red", "border": "2px solid red"});
});