prevUntil() 함수는 지정된 expression과 일치하는 요소를 만날 때까지 일치하는 각 요소 이전의 모든 형제 요소를 선택하고 이를 jQuery 개체 형식으로 반환하는 데 사용됩니다.
여기서 표현은 선택기(string), DOM 요소(Element), jQuery 개체를 나타냅니다.
선택기를 사용하여 선택 범위를 더 좁히고 지정된 선택기와 일치하는 요소를 필터링할 수도 있습니다.
이 함수의 반대는 nextUntil() 함수로, 지정된 표현식과 일치하는 요소를 만날 때까지 각 일치 요소 다음에 있는 모든 형제 요소를 선택하는 데 사용됩니다.
이 함수는 jQuery 객체(인스턴스)에 속합니다.
Syntax
이 함수는 jQuery 1.4의 새로운 기능입니다.
jQueryObject.prevUntil( [ UntilExpr [, filter ] ] )
Parameter
매개변수 설명
untilExpr 현재 일치 프로세스 중에 이 표현식과 일치하는 표현식이 발견된 경우 Optional/String/Element/jQuery 유형 지정된 표현식 요소 현재 일치가 중지됩니다.
filter 선택적/문자열 유형 지정 선택기 문자열로, 일치하는 요소를 필터링하는 데 사용됩니다.
prevUntil() 함수는 지정된 표현인 UntilExpr과 일치하는 요소(이 요소 제외)를 찾을 때까지 현재 jQuery 개체의 일치하는 각 요소 앞에 있는 모든 형제 요소를 선택합니다. 또한 필터 매개변수를 지정하여 필터링 범위를 더욱 좁히고 필터 선택기와 일치하는 요소를 선택할 수도 있습니다.
UntilExpr 매개변수를 생략하면 이전의 모든 형제 요소가 선택됩니다.
jQuery 1.6의 새로운 지원: UntilExpr 매개변수는 DOM 요소(Element) 또는 jQuery 객체가 될 수 있습니다.
반환 값
prevUntil()함수의 반환 값은 jQuery 유형으로, 새 jQuery 객체를 반환합니다. 이 객체는 현재 jQuery 객체(지정된 경우)의 각 일치 요소 앞에 일치하는 모든 선택기 필터를 캡슐화합니다. Expr이 발견될 때까지 지정된 표현식과 일치하는 요소입니다.
일치하는 요소가 없으면 빈 jQuery 객체가 반환됩니다.
예제 및 설명
prevUntil() 함수와 prevAll() 함수에는 다음과 같은 동등한 코드가 있습니다.
// 这里的selector表示任意的选择器 // 两者均不带任何参数 $("selector").prevUntil( ); // 等价于 $("selector").prevAll( );
다음 HTML 코드를 예로 들어보세요.
<p id="n1"> <span id="n2" class="foo"></span> <label id="n3"></label> <span id="n4"></span> <span id="n5" class="foo"></span> </p> <p id="n6"> <strong id="n7" class="active"></strong> <span id="n8"></span> <span id="n9" class="foo"></span> <label id="n10"></label> </p>
다음 jQuery 샘플 코드는 prevUntil() 함수 사용법:
//返回jQuery对象所有匹配元素的标识信息数组 //每个元素形如:tagName或tagName#id(如果有id的话) function getTagsInfo($doms){ return $doms.map(function(){ return this.tagName + (this.id ? "#" + this.id : ""); }).get(); } var $n5 = $("#n5"); //匹配n5之前的所有同辈元素,直到遇到包含类名"foo"的元素为止 var $elements = $n5.prevUntil(".foo"); document.writeln( getTagsInfo( $elements ) ); // SPAN#n4,LABEL#n3 //匹配n5之前的所有同辈元素,直到遇到label元素为止 var $matches = $n5.prevUntil("label"); document.writeln( getTagsInfo( $matches ) ); // SPAN#n4 var $label = $("label"); //匹配n5之前包含类名"foo"的所有同辈span元素,直到遇到包含类名"active"的元素为止 var $span_foo = $label.prevUntil(".active", "span.foo"); document.writeln( getTagsInfo( $span_foo ) ); // SPAN#n9,SPAN#n2 var $n9 = $("#n9"); //不带任何参数的prevUntil()函数等价于不带任何参数的prevAll()函数 var $result = $n9.prevUntil( ); document.writeln( getTagsInfo( $result ) ); // SPAN#n8,STRONG#n7
위 내용은 jQuery.prevUntil() 함수 인스턴스 사용법에 대한 자세한 설명의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!