dir.js 356 B

1234567891011121314151617181920
  1. define( [
  2. "../../core"
  3. ], function( jQuery ) {
  4. return function( elem, dir, until ) {
  5. var matched = [],
  6. truncate = until !== undefined;
  7. while ( ( elem = elem[ dir ] ) && elem.nodeType !== 9 ) {
  8. if ( elem.nodeType === 1 ) {
  9. if ( truncate && jQuery( elem ).is( until ) ) {
  10. break;
  11. }
  12. matched.push( elem );
  13. }
  14. }
  15. return matched;
  16. };
  17. } );