jQuery 조상LOGIN

jQuery 조상

jQuery 순회 - 조상


조상은 아버지, 할아버지, 증조할아버지 등입니다.

jQuery를 사용하면 DOM 트리를 탐색하여 요소의 조상을 찾을 수 있습니다.


DOM 트리 탐색

다음 jQuery 메서드는 DOM 트리 탐색에 유용합니다.

  • parent()

  • parents()

  • parent 까지()


jQuery parent() 메서드

parent() 메서드는 선택한 요소의 직접 상위 요소를 반환합니다.

이 방법은 DOM 트리를 한 수준 위로만 탐색합니다.

다음 예에서는 각 <span> 요소의 직접 상위 요소를 반환합니다.

<!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":"red","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>

프로그램을 실행하여 사용해 보세요.


jQuery parents() 메서드

parents() 메서드는 모든 요소를 ​​반환합니다. 선택한 요소의 상위 요소로, 문서의 루트 요소(<html>)까지 계속됩니다.

다음 예에서는 모든 <span> 요소의 모든 상위 항목을 반환합니다.

<!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").parents().css({"color":"red","border":"2px solid red"});
});
</script>
</head>
<body class="ancestors">body (曾曾祖父元素)
  <div style="width:300px;">div (曾祖父元素)
    <ul>ul (祖父元素)  
      <li>li (父元素)
        <span>span</span>
      </li>
    </ul>   
  </div>
</body>
</html>

프로그램을 실행하여 사용해 보세요.


선택적 매개변수를 사용하여 상위 요소 검색을 필터링할 수도 있습니다.

다음 예에서는 <ul> 요소인 모든 <span> 요소의 모든 상위 항목을 반환합니다.

<!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:500px;">div (great-grandparent)
    <ul>ul (grandparent)
        <li>li (direct parent)
            <span>span</span>
        </li>
    </ul>
</div>
</body>
</html>

프로그램을 실행하여 사용해 보세요.


jQuery parentUntil() 메서드

parentsUntil() 메소드 주어진 두 요소 사이의 모든 상위 요소를 반환합니다.

다음 예에서는 <span> 및 <div> 요소 사이의 모든 상위 요소를 반환합니다.

<!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":"red","border":"2px solid red"});
});
</script>
</head>
<body class="ancestors"> body (曾曾祖父元素)
  <div style="width:500px;">div (曾祖父元素)
    <ul>ul (祖父元素)  
      <li>li (父元素)
        <span>span</span>
      </li>
    </ul>   
  </div>
</body>
</html>

프로그램을 실행하여 시도해 보세요.



다음 섹션
<!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").parents().css({"color":"red","border":"2px solid red"}); }); </script> </head> <body class="ancestors">body (曾曾祖父元素) <div style="width:500px;">div (曾祖父元素) <ul>ul (祖父元素) <li>li (父元素) <span>span</span> </li> </ul> </div> </body> </html>
코스웨어