>  기사  >  웹 프론트엔드  >  jQuery.prevUntil() 함수 인스턴스 사용법에 대한 자세한 설명

jQuery.prevUntil() 함수 인스턴스 사용법에 대한 자세한 설명

巴扎黑
巴扎黑원래의
2017-06-24 10:02:471214검색

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 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.