Die Funktion
prevUntil() wird verwendet, um alle Geschwisterelemente vor jedem übereinstimmenden Element auszuwählen, bis ein Element gefunden wird, das dem angegebenen Ausdruck entspricht, und es in Form eines jQuery-Objekts zurückgibt.
Der Ausdruck hier bezieht sich auf: Selektor (String), DOM-Element (Element), jQuery-Objekt.
Sie können Selektoren auch verwenden, um den Auswahlbereich weiter einzugrenzen und Elemente herauszufiltern, die mit dem angegebenen Selektor übereinstimmen.
Das Gegenteil dieser Funktion ist die Funktion nextUntil(), mit der nach jedem übereinstimmenden Element alle Geschwisterelemente ausgewählt werden, bis ein Element gefunden wird, das dem angegebenen Ausdruck entspricht.
Diese Funktion gehört zum jQuery-Objekt (Instanz).
Syntax
Diese Funktion wurde in jQuery 1.4 hinzugefügt.
jQueryObject.prevUntil( [ UntilExpr [, Filter ] ] )
Parameter
Parameterbeschreibung
untilExpr Optional/String/Element/jQuery-Typspezifikation An Ausdruck: Wenn während des aktuellen Abgleichvorgangs ein mit dem Ausdruck übereinstimmendes Element gefunden wird, wird der aktuelle Abgleich gestoppt.
Filter-Selektorzeichenfolge, angegeben durch den optionalen/String-Typ, der zum Filtern übereinstimmender Elemente verwendet wird.
Die Funktion „prevUntil()“ wählt alle Geschwisterelemente vor jedem übereinstimmenden Element des aktuellen jQuery-Objekts aus, bis sie auf ein Element trifft, das dem angegebenen Ausdruck UntilExpr entspricht (mit Ausnahme dieses Elements). Darüber hinaus können wir auch den Filterparameter angeben, um den Filterbereich weiter einzugrenzen und Elemente auszuwählen, die dem Filterselektor entsprechen.
Wenn der Parameter UntilExpr weggelassen wird, werden alle vorherigen Geschwisterelemente ausgewählt.
jQuery 1.6 neue Unterstützung: Parameter UntilExpr kann ein DOM-Element (Element) oder ein jQuery-Objekt sein.
Rückgabewert
prevUntil()Der Rückgabewert der Funktion ist vom Typ jQuery und gibt ein neues jQuery-Objekt zurück, das das aktuelle jQuery-Objekt vor jedem passenden Element einkapselt. Alle Geschwisterelemente, die mit dem Selektorfilter übereinstimmen (falls angegeben), bis ein Element gefunden wird, das mit dem angegebenen Ausdruck UntilExpr übereinstimmt.
Wenn kein passendes Element vorhanden ist, wird ein leeres jQuery-Objekt zurückgegeben.
Beispiel und Beschreibung
Die Funktion prevUntil() und die Funktion prevAll() haben die folgenden äquivalenten Codes:
// 这里的selector表示任意的选择器 // 两者均不带任何参数 $("selector").prevUntil( ); // 等价于 $("selector").prevAll( );
Nehmen Sie den folgenden HTML-Code als Beispiel:
<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>
Der folgende jQuery-Beispielcode wird verwendet, um die spezifische Verwendung der prevUntil()-Funktion zu demonstrieren:
//返回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
Das obige ist der detaillierte Inhalt vonDetaillierte Erläuterung der Verwendung der jQuery.prevUntil()-Funktionsinstanz. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!