MCPcopy Index your code
hub / github.com/JsAaron/jQuery / winnow

Function winnow

1.6.1/src/traversing.js:300–332  ·  view source on GitHub ↗
( elements, qualifier, keep )

Source from the content-addressed store, hash-verified

298
299// Implement the identical functionality for filter and not
300function winnow( elements, qualifier, keep ) {
301
302 // Can't pass null or undefined to indexOf in Firefox 4
303 // Set to 0 to skip string check
304 qualifier = qualifier || 0;
305
306 if ( jQuery.isFunction( qualifier ) ) {
307 return jQuery.grep(elements, function( elem, i ) {
308 var retVal = !!qualifier.call( elem, i, elem );
309 return retVal === keep;
310 });
311
312 } else if ( qualifier.nodeType ) {
313 return jQuery.grep(elements, function( elem, i ) {
314 return (elem === qualifier) === keep;
315 });
316
317 } else if ( typeof qualifier === "string" ) {
318 var filtered = jQuery.grep(elements, function( elem ) {
319 return elem.nodeType === 1;
320 });
321
322 if ( isSimple.test( qualifier ) ) {
323 return jQuery.filter(qualifier, filtered, !keep);
324 } else {
325 qualifier = jQuery.filter( qualifier, filtered );
326 }
327 }
328
329 return jQuery.grep(elements, function( elem, i ) {
330 return (jQuery.inArray( elem, qualifier ) >= 0) === keep;
331 });
332}
333
334})( jQuery );

Callers 1

traversing.jsFile · 0.70

Calls

no outgoing calls

Tested by

no test coverage detected