fixed jQuery.dir regression introduced with 1.4 *untils patch that errored when traversing XHTML text nodes with an until test
This commit is contained in:
parent
09ef5b7598
commit
28ce15979f
2 changed files with 4 additions and 2 deletions
|
@ -235,7 +235,7 @@ jQuery.extend({
|
||||||
|
|
||||||
dir: function( elem, dir, until ) {
|
dir: function( elem, dir, until ) {
|
||||||
var matched = [], cur = elem[dir];
|
var matched = [], cur = elem[dir];
|
||||||
while ( cur && cur.nodeType !== 9 && (until === undefined || !jQuery( cur ).is( until )) ) {
|
while ( cur && cur.nodeType !== 9 && (until === undefined || cur.nodeType !== 1 || !jQuery( cur ).is( until )) ) {
|
||||||
if ( cur.nodeType === 1 ) {
|
if ( cur.nodeType === 1 ) {
|
||||||
matched.push( cur );
|
matched.push( cur );
|
||||||
}
|
}
|
||||||
|
|
|
@ -317,7 +317,7 @@ test("prevAll([String])", function() {
|
||||||
});
|
});
|
||||||
|
|
||||||
test("nextUntil([String])", function() {
|
test("nextUntil([String])", function() {
|
||||||
expect(10);
|
expect(11);
|
||||||
|
|
||||||
var elems = jQuery('#form').children().slice( 2, 12 );
|
var elems = jQuery('#form').children().slice( 2, 12 );
|
||||||
|
|
||||||
|
@ -331,6 +331,8 @@ test("nextUntil([String])", function() {
|
||||||
same( jQuery("#text1").nextUntil("#area1", "button,input").get(), elems.get(), "Multiple-filtered nextUntil check" );
|
same( jQuery("#text1").nextUntil("#area1", "button,input").get(), elems.get(), "Multiple-filtered nextUntil check" );
|
||||||
equals( jQuery("#text1").nextUntil("#area1", "div").length, 0, "Filtered nextUntil check, no match" );
|
equals( jQuery("#text1").nextUntil("#area1", "div").length, 0, "Filtered nextUntil check, no match" );
|
||||||
same( jQuery("#text1, #hidden1").nextUntil("#area1", "button,input").get(), elems.get(), "Multi-source, multiple-filtered nextUntil check" );
|
same( jQuery("#text1, #hidden1").nextUntil("#area1", "button,input").get(), elems.get(), "Multi-source, multiple-filtered nextUntil check" );
|
||||||
|
|
||||||
|
same( jQuery("#text1").nextUntil("[class=foo]").get(), jQuery("#text1").nextAll().get(), "Non-element nodes must be skipped, since they have no attributes" );
|
||||||
});
|
});
|
||||||
|
|
||||||
test("prevUntil([String])", function() {
|
test("prevUntil([String])", function() {
|
||||||
|
|
Loading…
Reference in a new issue