[jquery] n 번째 jQuery 요소를 얻는 방법

jQuery $("...").get(3)에서 세 번째 DOM 요소를 반환합니다. 3 번째 jQuery 요소를 반환하는 함수는 무엇입니까?



답변

(짧은) 선택기 페이지를 먼저 찾아 보지 않겠습니까?

여기 있습니다 : :eq()연산자. 처럼 사용 get()되지만 jQuery 객체를 반환합니다.

또는 .eq()기능도 사용할 수 있습니다.


답변

: eq 선택기를 사용할 수 있습니다 . 예를 들면 다음과 같습니다.

$("td:eq(2)").css("color", "red"); // gets the third td element

또는 eq (int) 함수 :

$("td").eq(2).css("color", "red");

또한 인덱스는 0부터 시작합니다.


답변

jQuery 객체를 빌드하는 쿼리를 제어 할 수 있다면 :eq()

$("div:eq(2)")

제어 할 수없는 경우 (예 : 다른 함수 또는 다른 함수에서 전달 된 경우) .eq()

var $thirdElement = $jqObj.eq(2);

또는 세 번째, 네 번째 및 다섯 번째 요소와 같은 섹션을 원하면 .slice()

var $third4th5thElements = $jqObj.slice(2, 5);


답변

나는 당신이 이것을 사용할 수 있다고 생각합니다

$("ul li:nth-child(2)").append("<span> - 2nd!</span>");

일치하는 각 ul에서 두 번째 li를 찾아서 기록합니다.


답변

.eq ()-요소의 0 기반 위치를 나타내는 정수입니다.

전의:

간단한 목록이있는 페이지를 고려하십시오.

<ul>
<li>list item 1</li>
<li>list item 2</li>
<li>list item 3</li>
<li>list item 4</li>
</ul>

이 방법을 목록 항목 세트에 적용 할 수 있습니다.

$( "li" ).eq( 2 ).css( "background-color", "red" );


자세한 내용은 .eq ()


답변

변수에 jquery 객체가 이미있는 경우 jquery를 사용하지 않고 일반 색인 배열로 처리 할 수도 있습니다.

var all_rows = $("tr");
for(var i=0; i < all_rows.length; i++){
   var row = all_rows[i];
   //additionally, you can use it again in a jquery selector
   $(row).css("background-color","black");
}

위의 예제는 어떤 식 으로든 유용하지는 않지만 jquery로 만든 객체를 인덱스 배열로 처리하는 방법을 나타냅니다.


답변

귀하의 질문을 올바르게 이해하면 항상 get 함수를 다음과 같이 포장 할 수 있습니다.

var $someJqueryEl = $($('.myJqueryEls').get(3));