오늘 $("ul li:last-child").offset().top을 작성했는데 오류가 발견되었는데 $("ul li").last().offset().top이 정확했습니다. 그 이유는 다음과 같습니다.
두 선택자는 컬렉션의 마지막 요소와 일치합니다. 차이점은 :last가 모든 컬렉션의 마지막 요소와 일치한다는 것입니다. 그리고 :last-child는 컬렉션의 모든 마지막 하위 요소와 일치합니다. :last는 항상 하나의 요소를 반환하는 반면, :last-child는 여러 요소를 반환할 수 있습니다.
바로 그거야!
:last Selects the last matched element. Note that :last selects a single element by filtering the current jQuery collection and matching the last element within it. Additional Notes: Because :last is a jQuery extension and not part of the CSS specification, queries using :last cannot take advantage of the performance boost provided by the native DOM querySelectorAll() method. To achieve the best performance when using :last to select elements, first select the elements using a pure CSS selector, then use.filter(":last").
:last-child:
부모의 마지막 자식인 모든 요소를 선택합니다.
<div> <span>John,</span> <span>Karl,</span> <span>Brandon,</span> <span>Sam</span> </div> <div> <span>Glen,</span> <span>Tane,</span> <span>Ralph,</span> <span>David</span> </div> <script> $("div span:last-child") .css({color:"red", fontSize:"80%"}) .hover(function () { $(this).addClass("solast"); }, function () { $(this).removeClass("solast"); });
두 선택자는 집합의 마지막 요소와 일치합니다. 차이점은:last가 집합의 모든 요소와 일치한다는 것입니다. 의 마지막 요소입니다. 그리고 :last-child는 컬렉션의 모든 마지막 하위 요소와 일치합니다. :last는 항상 하나의 요소를 반환하는 반면, :last-child는 여러 요소를 반환할 수 있습니다.
$('div p:last')는 마지막 P 요소를 선택하고 강조 표시합니다. 결과는 다음과 같습니다.
<div> <p>Paragraph</p> <p>Paragraph</p> <p>Paragraph</p> </div> <div> <p>Paragraph</p> <p>Paragraph</p> <p>Paragraph</p> </div> <div> <p>Paragraph</p> <p>Paragraph</p> <p>Paragraph</p> </div>
$('div p:last-child')는 다음에 있는 모든 p 하위 요소를 선택합니다. 마지막 div 및 하이라이트:
<div> <p>Paragraph</p> <p>Paragraph</p> <p>Paragraph</p> </div> <div> <p>Paragraph</p> <p>Paragraph</p> <p>Paragraph</p> </div> <div> <p>Paragraph</p> <p>Paragraph</p> <p>Paragraph</p> </div>
위 내용은 jquery 선택기 :last와 :last-child의 차이점의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!