jQuery Traversal - Ancêtres

Traverser le DOM vers le haut

parent()

parents()

parentsUntil()


parent( ) méthode

la méthode parent() renvoie l'élément parent direct de l'élément sélectionné.

Cette méthode ne parcourra l'arborescence DOM qu'un niveau plus haut. Méthode

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
    <style>
        .ancestors *
        { 
        display: block;
        border: 2px solid lightgrey;
        color: lightgrey;
        padding: 5px;
        margin: 15px;
        }
    </style>
<script src="http://libs.baidu.com/jquery/1.10.2/jquery.min.js"></script>
<script>
    $(document).ready(function(){
      $("span").parent().css({"color":"blue","border":"2px solid red"});
    });
</script>
</head>
<body>
<div class="ancestors">
  <div style="width:300px;">div (曾祖父元素)
    <ul>ul (祖父元素)  
      <li>li (父元素)
        <span>span</span>
      </li>
    </ul>   
  </div>
  <div style="width:300px;">div (祖父元素)   
    <p>p (父元素)
        <span>span</span>
      </p> 
  </div>
</div>
</body>
</html>


parents() La méthode

parents() renvoie tous les éléments ancêtres de l'élément sélectionné, jusqu'à l'élément racine de l'élément document (< html>).

<!DOCTYPE html>
<html>
<head>
<style>
.ancestors *
{ 
display: block;
border: 2px solid lightgrey;
color: lightgrey;
padding: 5px;
margin: 15px;
}
</style>
<script src="http://libs.baidu.com/jquery/1.10.2/jquery.min.js">
</script>
<script>
$(document).ready(function(){
  $("span").parents("ul").css({"color":"red","border":"2px solid red"});
});
</script>
</head>
<body class="ancestors">body (great-great-grandparent)
  <div style="width:300px;">div (great-grandparent)
    <ul>ul (grandparent)  
      <li>li (direct parent)
        <span>span</span>
      </li>
    </ul>   
  </div>
</body>
</html>

Renvoie tous les ancêtres de tous les éléments <span>


Méthode parentsUntil()

La méthode parentsUntil() renvoie tous les éléments ancêtres entre deux éléments donnés.

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<style>
.ancestors *
{ 
display: block;
border: 2px solid lightgrey;
color: lightgrey;
padding: 5px;
margin: 15px;
}
</style>
<script src="http://libs.baidu.com/jquery/1.10.2/jquery.min.js">
</script>
<script>
$(document).ready(function(){
  $("span").parentsUntil("div").css({"color":"blue","border":"3px solid green"});
});
</script>
</head>
<body class="ancestors"> body (曾曾祖父元素)
  <div style="width:300px;">div (曾祖父元素)
    <ul>ul (祖父元素)  
      <li>li (父元素)
        <span>span</span>
      </li>
    </ul>   
  </div>
</body>
</html>

Renvoie tous les éléments ancêtres entre les éléments <span>

Formation continue
||
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>php中文网(php.cn)</title> <script src="http://libs.baidu.com/jquery/1.10.2/jquery.min.js"></script> <script type="text/javascript"> $(document).ready(function(){ $("li").parentsUntil(".inner",".second").css({"border":"3px solid blue", "width":"200px"}); }) </script> </head> <body> <div class="outer"> <div>php中文网</div> <div class="inner"> <ul class="first"> <li>HTML专区</li> <li>Javascript专区</li> <li>Div+CSS专区</li> <li>Jquery专区</li> </ul> <ul class="second"> <li>HTML专区</li> <li>Javascript专区</li> <li>Div+CSS专区</li> <li>Jquery专区</li> </ul> </div> </div> </body> </html>
soumettreRéinitialiser le code
  • Recommandations de cours
  • Téléchargement du didacticiel