loading
반응형

jQuery는 또 다른 방법으로 선택자를 구성해서 사용할 수 있는데, 필터를 이용하여 사용을 할 수 있다.

일반적으로 다른 유형의 선택기와 함께 사용해서 요소 집합을 줄여 선택하는 방법이다.

 

이 방법은 필터를 이용해서 사용하는데 어떠한 종류가 있고 사용법은 어떻게 사용하는지 알아보자.

 

▶ 위치 필터(Position filters) 종류 ◀

선택자 설명
:first 현재 페이지 내에서 첫 번째 일치 항목을 선택한다.
:last 현재 페이지 내에서 마지막으로 일치하는 항목을 선택한다.
:even 현재 페이지 내에서 짝수 요소를 선택한다.
:odd 현재 페이지 내에서 홀수 요소를 선택한다.
:eq(숫자) 일치하는 숫자의 번째 요소를 선택한다.
:gt(숫자) 일치하는 숫자의 번째 요소 이후의 모든 요소를 선택한다.
:lt(숫자) 일치하는 숫자의 번째 요소 앞의 모든 요소를 선택한다.

 

위 종류를 테스트를 진행해 보면서 확인해보자 어떻게 적용이 되는지...

아래는 HTML 코드이며, 이 코드로 위치 필터 종류의 모든 선택자 테스트를 진행해 보겠다.

 

<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width">
  <script src="https://code.jquery.com/jquery-3.1.0.js"></script>
  <title>JS Bin</title>
  <script>
    $(document).ready(function(){
      // 테스트 코드 넣는곳
    
    });    
  </script>
</head>
<body>
  <div>
    <p>1 번</p>
    <p>2 번</p>
    <p>3 번</p>    
  </div>
  
  <div>
    <p>4 번</p>
    <p>5 번</p>
    <p>6 번</p>    
  </div>
  
  <ul>
    <li>
      <p>7 번</p>
    </li>
    
    <li>
     <p>8 번</p>     
    </li>
  </ul>
   
  <ul>
    <li>
      <p>9 번</p>
    </li>
    
    <li>
     <p>10 번</p>     
    </li>
  </ul>  
  <span><p>11 번</p></span>
</body>
</html>

 

▶ :first와 :last 사용법

※ 위 HTML 코드 대상으로 사용한 테스트 코드

$('p:first').css({'color':'blue'}); // p 태그 중 제일 첫번째 요소를 찾아 글자색 blue 로 적용
$('p:last').css({'color':'red'}); // p 태그 중 제일 마지막 요소를 찾아 글자색 red 로 적용
$('li:first').css({'color':'pink'}); // li 태그 중 첫번째 요소를 찾아 글자색 pink 로 적용
$('li:last').css({'color':'green'}); // li 태그중 마지막 요소를 찾아 글자색 green 으로 적용

위의 HTML 코드에 :first와 :last를 적용한 결과물을 보면 어떻게 적용되었는지 확인을

하면 이해가 빠를 것이다.

 

말 그대로 :first는 첫 번째 요소를 찾으면 바로 그 요소를 선택한다.

그리고 :last는 마지막 요소를 찾으면 그 요소를 선택한다.

 

위 4개의 코드의 결과 화면이다.

결과 화면

:first 와 :last 결과화면

 

 

 

▶ :even와 :odd 사용법

※ 위 HTML 코드 대상으로 사용한 테스트 코드

$('p:even').css({'background':'yellow'}); // 현재 페이지 내에 p 태그 모든 요소를 짝수로 선택
$('p:odd').css({'background':'pink'}); // 현재 페이지 내에 p 태그 모든 요소를 홀수로 선택

 

p:even 선택자는 p 태그 중 짝수 번째에 있는 요소들만 전부 선택한다.

p:odd 선택자는 p 태그 중 홀수 번째에 있는 요소들을 전부 선택한다.

 

결과 화면을 보면 li 태그 내에서도 p 태그가 있기 때문에 선택이 된 거니 혼동하지 말자.

결과 화면

p 태그의 :even 과 :odd 결과화면

 

 

두 번째 li 태그에 대해서도 확인해보자.

$('li:even').css({'background':'green'});
$('li:odd').css({'background':'aqua'});

li:even 은 현재 페이지 내에서 li 태그 중 짝수 번째에 해당하는 요소만 선택한다.

li:odd는 현재 페이지 내에서 li 태그 중 홀수 번째에 해당하는 요소만 선택한다.

 

결과 화면

li 태그의 :even 과 :odd 결과화면

 

반응형

▶ :eq(숫자) 사용법

$('p:eq(0)').css({'background':'yellow'});
$('p:eq(2)').css({'background':'yellow'});
$('p:eq(10)').css({'background':'yellow'});
$('li:eq(0)').css({'background':'pink'});
$('li:eq(3)').css({'background':'pink'});

eq(숫자)는 해당하는 숫자의 요소 번째를 선택하는 거다. 순번은 1번부터 있는 게 아니라 0번부터 있다. 주의하자.

 

결과 화면

p, li 태그 :eq(숫자) 결과화면

 

 

 

 

▶ :gt(숫자)와 :lt(숫자) 사용법

$('p:gt(5)').css({'background':'yellow'});

p:gt(숫자)는 5 번째 의 인덱스 요소 그다음의 모든 요소를 선택된다. 

숫자는 0번부터 시작하는 것을 주의하자.

 

결과 화면

p 태그의 gt(숫자) 결과화면

 

 

 

이제 두 번째 인 p:lt(숫자)를 확인해보자.

$('p:lt(5)').css({'background':'yellow'});

 

결과 화면

p 태그의 lt(숫자) 결과화면

 

 

이렇게 gt와 lt는 반대 개념이라 생각하면 된다.

중요한 건 숫자(인덱스) 들어가는 부분은 1부터가 아니라 0번부터 시작됨을 유의하자

반응형

+ Recent posts