• 회원가입
  • 로그인
  • 구글아이디로 로그인

[Traversing] JQ - prevUntil() 메서드 - 특정 범위 안의 이전 형제요소 반환. (= prevUntil메서드 = 프리브언틸 메서드)

목차
  1. prevUntil() 예제 - 두 인수 사이의 이전 형제요소 반환
  2. prevUntil() 정의
  3. prevUntil() 구문
  4. prevUntil() 예제 - filter 개수 1개인 경우
  5. prevUntil() 예제 - filter 개수 여러 개 인 경우
  6. prevUntil() 예제 - 매개변수에 DOM만 있는 경우
  7. prevUntil() 예제 - 매개변수에 DOM과 filter가 둘 다 있는 경우

 

prevUntil() 예제 - 두 인수 사이의 이전 형제요소 반환

 

<style>

.hz * { 

  display: block;

  border: 2px solid lightgrey;

  color: lightgrey;

  padding: 5px;

  margin: 15px;

}

</style>


<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>

<script>

$(document).ready(function(){

  $("li.start").prevUntil("li.stop").css({"color": "red", "border": "2px solid red"});

});

</script>


<div style="width:500px;" class="hz">

  <ul>ul

    <li class="stop">li class="stop" (포함 X)</li>

    <li>li</li>

    <li>li</li>

    <li>li</li>

    <li class="start">class="start" (포함 X)</li>

    <li>li</li>

    <li>li</li>

  </ul>   

</div>


결과보기 

 

prevUntil() 정의

 

selectorstop 사이의 모든 형제 요소 중 filter에 해당하는 요소 반환.

※ 형제 요소 : 동일 부모 요소 갖는 요소.
※ 이 메서드는 DOM 트리에서 형제 요소 따라 탐색. 

 


 

1.

매개변수가 모두 빈 경우, prevAll() 메서드와 마찬가지로 이전의 모든 형제 요소 반환.

 

2.

prev() 메서드 : 선택 요소의 이전 형제 요소 반환.

prevAll() 메서드 : 선택 요소의 모든 이전 형제 요소 반환.

 

 

prevUntil() 구문

 

$(selector).prevUntil(stop,filter)

 


[매개변수]

 

stop

선택. 이전 일치 형제 요소에 대한 검색 중지 위치.
(가능값 종류: 선택자 표현식, 요소, jQuery 객체)

 

filter

선택. selectorstop 사이 형제 요소 중 해당 선택 요소 범위를 좁히기 위한 선택자 표현식.
※ 여러 형제요소를 반환하려면 각 식을 쉼표로 구분.

 


[반환값]

 

selector < filter에 해당하는 요소 < stop 

 

 

prevUntil() 예제 - filter 개수 1개인 경우

 

<style>

.hz * { 

  display: block;

  border: 2px solid lightgrey;

  color: lightgrey;

  padding: 5px;

  margin: 15px;

}

</style>

<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>

<script>

$(document).ready(function(){

    $("li.start").prevUntil("li.stop", ".my").css({"color": "red", "border": "2px solid red"});

});

</script>

</head>

<body>


<div style="width:500px;" class="hz">

  <ul>ul 

    <li class="stop">li class="stop"</li>

    <li class="my">li class="my"</li>

    <li>li</li>

    <li class="my">li class="my"</li>

    <li class="start">li class="start"</li>

    <li>li</li>

    <li>li</li>

  </ul>   

</div>

 

결과보기

 

prevUntil() 예제 - filter 개수 여러 개 인 경우

 

<style>

.hz * { 

  display: block;

  border: 2px solid lightgrey;

  color: lightgrey;

  padding: 5px;

  margin: 15px;

}

</style>

<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>

<script>

$(document).ready(function(){

    $("h4").prevUntil("h1", ".h2, .span, .p").css({"color": "red", "border": "2px solid red"});

});

</script>


<div style="width:500px;" class="hz">

  <div>

    <h1>h1 (포함 X)</h1>

    <h2 class="h2">h2 class="h2"</h2>

    <span>span</span>

    <span class="span">span class="span"</span>

    <span class="span">span class="span"</span>

    <p>p</p>

    <p class="p">p class="p"</p>

    <p>p</p>

    <h3>h3</h3>

    <h4>h4 (포함 X)</h4>

    <span class="span">span class="span"</span>

    <p>p</p>

  </div>

</div>


결과보기

 

prevUntil() 예제 - 매개변수에 DOM만 있는 경우

 

<style>

.hz * { 

  display: block;

  border: 2px solid lightgrey;

  color: lightgrey;

  padding: 5px;

  margin: 15px;

}

</style>


<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>

<script>

$(document).ready(function(){

    var DOM = document.getElementsByClassName("li.stop");

    $("li.start").prevUntil(DOM).css({"color": "red", "border": "2px solid red"});

});

</script>


<div style="width:500px;" class="hz">

  <ul>ul (parent)  

    <li class="stop">li class="stop" (포함 O)</li>

    <li>li</li>

    <li>li</li>

    <li>li</li>

    <li class="start">li class="start" (포함 X)</li>

    <li>li</li>

    <li>li</li>

  </ul>   

</div>

 

결과보기

PS. 위 예제 경우, DOM까지 포함되는 것에 주의.

 

prevUntil() 예제 - 매개변수에 DOM과 filter가 둘 다 있는 경우

 

<style>

.hz * { 

  display: block;

  border: 2px solid lightgrey;

  color: lightgrey;

  padding: 5px;

  margin: 15px;

}

</style>

<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>

<script>

$(document).ready(function(){

  var DOM = document.getElementsByClassName("li.stop");

  $("li.start").prevUntil(DOM,".my").css({"color": "red", "border": "2px solid red"});

});

</script>


<div style="width:500px;" class="hz">

  <ul>ul (parent)  

    <li class="stop">li class="stop" (포함 X)</li>

    <li class="my"> class="my"</li>

    <li>li</li>

    <li class="my"> class="my"</li>

    <li class="start"> class="start" (포함 X)</li>

    <li>li</li>

    <li>li</li>

  </ul>   

</div>


결과보기


 


분류 제목
ETC JQ - play(), pause() 메서드 - jquery 문법으로 처리하기
ETC JQ - eq() vs. get() 메서드 차이
ETC JQ - resizable() 메서드 - 요소 크기 재조정 (= 사이즈 변경 가능 = resizable메서드…
ETC JQ - (영문 년월일 → 숫자 년월일) 날짜시간 표기 변환.
ETC JQ - FAQ (자주묻는질문) 아코디언 메뉴
ETC JQ - 자식요소 너비를 부모요소 너비로 설정. (= 너버를 부모요소에 꽉차게 설정.)
ETC JQ - 요소 순서 랜덤 배치/정렬. ★★★★★
ETC JQ - fakeLoader(페이크로더) 효과 + 이미지 랜덤 인트로 페이지
ETC JQ - <li> 높이를 LI 요소 중 최대높이에 맞추기 설정 (= 가장 긴/높은 높이에 맞추기 = 높이 정…
ETC JQ - Uncaught TypeError: Cannot read properties of undefined…
bookmark JQ - 실렉트 리스트간 아이템 선택/해제 (추가/삭제/이동) (Move Items Between Two S…
jquery JQ - (1초/0.5초)이상 마우스버튼 누르고 있으면 숫자 증가 (= 마우스 클릭하고 있으면 숫자 증가 =…
jquery JQ - 콘텐츠를 일정 높이 기준으로 페이징 처리 (= 본문 내용을 일정 높이 단위로 페이지 처리) ※ 이전…
jquery JQ - <textarea> (텍스트에어리어) 입력 가능 최대 길이 설정 (= 글자수 카운트)
jquery JQ - 스크롤 시 비디오 동영상 자동재생 시작 (Scroll Video Autoplay)
jquery JQ - 동영상 제어 메서드 종류 - load(), play(), pause()
basic JQ - 쿠키 (Cookie) 사용법 - 생성/얻기/삭제
jquery JQ - $.fn (= jQuery.fn) 확장 - 사용자정의메서드 생성
jquery JQ - 모든 링크 주소를 특정 URL주소로 일괄 변경
jquery JQ - 입력된 값만 보이기 (= 입력값만 표시 = 입력값 없는 요소 숨기기)
15/15
목록
찾아주셔서 감사합니다. Since 2012