MCPcopy Create free account
hub / github.com/unconed/TermKit / winnow

Function winnow

HTML/jquery.js:5418–5450  ·  view source on GitHub ↗
( elements, qualifier, keep )

Source from the content-addressed store, hash-verified

5416
5417// Implement the identical functionality for filter and not
5418function winnow( elements, qualifier, keep ) {
5419
5420 // Can't pass null or undefined to indexOf in Firefox 4
5421 // Set to 0 to skip string check
5422 qualifier = qualifier || 0;
5423
5424 if ( jQuery.isFunction( qualifier ) ) {
5425 return jQuery.grep(elements, function( elem, i ) {
5426 var retVal = !!qualifier.call( elem, i, elem );
5427 return retVal === keep;
5428 });
5429
5430 } else if ( qualifier.nodeType ) {
5431 return jQuery.grep(elements, function( elem, i ) {
5432 return (elem === qualifier) === keep;
5433 });
5434
5435 } else if ( typeof qualifier === "string" ) {
5436 var filtered = jQuery.grep(elements, function( elem ) {
5437 return elem.nodeType === 1;
5438 });
5439
5440 if ( isSimple.test( qualifier ) ) {
5441 return jQuery.filter(qualifier, filtered, !keep);
5442 } else {
5443 qualifier = jQuery.filter( qualifier, filtered );
5444 }
5445 }
5446
5447 return jQuery.grep(elements, function( elem, i ) {
5448 return (jQuery.inArray( elem, qualifier ) >= 0) === keep;
5449 });
5450}
5451
5452
5453

Callers 1

jquery.jsFile · 0.70

Calls

no outgoing calls

Tested by

no test coverage detected