this.context = selector.context;
}
- return this.setArray(jQuery.makeArray(selector));
+ return this.setArray(jQuery.isArray( selector ) ?
+ selector :
+ jQuery.makeArray(selector));
},
// Start with an empty selector
return num === undefined ?
// Return a 'clean' array
- jQuery.makeArray( this ) :
+ Array.prototype.slice.call( this ) :
// Return just the object
this[ num ];
}
return ret;
};
+} else if ( Array.prototype.indexOf ) {
+ var indexOf = Array.prototype.indexOf,
+ allSort = document.getElementsByTagName("*");
+
+ sortOrder = function( a, b ) {
+ var ret = indexOf.call( allSort, a ) - indexOf.call( allSort, b );
+ if ( ret === 0 ) {
+ hasDuplicate = true;
+ }
+ return ret;
+ };
}
// Check to see if the browser returns elements by name when
module("selector");
test("element", function() {
- expect(13);
+ expect(14);
reset();
ok( jQuery("*").size() >= 30, "Select all" );
isSet( jQuery("p"), jQuery("p, div p"), "Check for duplicates: p, div p" );
t( "Checking sort order", "h2, h1", ["header", "banner", "userAgent"] );
+ t( "Checking sort order", "h2:first, h1:first", ["header", "banner"] );
t( "Checking sort order", "p, p a", ["firstp", "simon1", "ap", "google", "groups", "anchor1", "mark", "sndp", "en", "yahoo", "sap", "anchor2", "simon", "first"] );
});