자식 요소의 개수를 기준으로 부모 요소 선택하는 방법

다음은 jQuery를 이용한 간단한 예제입니다. li 요소를 3개 이상 가진 ol 요소를 선택해서 글자를 빨간색으로 만듭니다.
1 min read

자식 요소의 개수를 기준으로 부모 요소을 선택하기 위해서는 스크립트를 이용해야 합니다.

다음은 jQuery를 이용한 간단한 예제입니다.

<li> 요소를 3개 이상 가진 <ol> 요소를 선택해서 글자를 빨간색으로 만듭니다.

<ol>
  <li>One</li>
  <li>Two</li>
</ol>
<ol>
  <li>One</li>
  <li>Two</li>
  <li>Three</li>
</ol>
.a {
  color: red;
}
$( document ).ready( function() {
  $( 'ol' ).each( function() {
    if ( $( 'li', this ).length > 2 ) {
      $( this ).addClass( 'a' );
    }
  });
});

 

$( 'ol' ).each( function() {

each로 각각의 <ol> 요소에 대해 개별적으로 접근합니다.

 

if ( $( 'li', this ).length > 2 ) {

length 속성으로 <li> 요소의 개수를 세고 2보다 큰지 비교합니다.

 

$( this ).addClass( 'a' );

조건에 맞다면 a라는 클래스을 추가합니다.

You may like these posts

  • .append() .append()는 선택한 요소의 내용의 끝에 콘텐트를 추가합니다.   기본형 .append( content [, content ] )   예를 들어 <p>Lorem Ipsum Dolor</p> 가 있을 때 $( 'p' ).appen…
  • .attr() .attr()은 요소(element)의 속성(attribute)의 값을 가져오거나 속성을 추가합니다.   기본형 1 .attr( attributeName ) 선택한 요소의 속성의 값을 가져옵니다. 예를 들어 $( 'div' ).attr( 'class' ); 는…
  • .appendTo() .appendTo()는 선택한 요소를 다른 요소 안에 넣습니다.   기본형 .appendTo( target ) 예를 들어 $( 'p' ).appendTo( 'blockquote' ); 는 <p> 요소를 <blockquote> 요소 안으로 …
  • .before() .before()는 선택한 요소 앞에 새 요소를 추가하거나, 다른 곳에 있는 요소를 이동시킬 수 있습니다.   기본형 .before( content [, content ] ) 예를 들어 $( 'h1' ).before( '<p>Hello</p>'…
  • .children() .children()은 어떤 요소의 자식 요소를 선택합니다.   기본형 .children( [ selector ] ) 예를 들어 $( 'div' ).children().css( 'color', 'blue' ); 는 <div> 요소의 자식 요소의 색을 파란색으…
  • .animate .animate()는 애니메이션 효과를 만듭니다.   기본형 .animate( properties [, duration ] [, easing ] [, complete ] )   properties 애니메이션 효과를 줄 속성을 정합니다. 가능한 속성은 다음과 같습니다…

Post a Comment