Skip to content
Permalink
Browse files

Make .add() take an optional context and - if a context is specified …

…in the root selector - use that as the base context.
  • Loading branch information
jeresig committed Nov 7, 2009
1 parent ef05f44 commit b0fe380cf89564305646bbd55d1fd7bd210fd591
Showing with 15 additions and 3 deletions.
  1. +3 −3 src/traversing.js
  2. +12 −0 test/unit/core.js
@@ -68,9 +68,9 @@ jQuery.fn.extend({
});
},

add: function( selector ) {
add: function( selector, context ) {
var set = typeof selector === "string" ?
jQuery( selector ) :
jQuery( selector, context || this.context ) :
jQuery.makeArray( selector ),
all = jQuery.merge( this.get(), set );

@@ -185,4 +185,4 @@ jQuery.extend({

return r;
}
});
});
@@ -436,6 +436,18 @@ test("add(String|Element|Array|undefined)", function() {
ok( jQuery([]).add( document.getElementById('form') ).length >= 13, "Add a form (adds the elements)" );
});

test("add(String, Context)", function() {
expect(6);

equals( jQuery(document).add("#form").length, 2, "Make sure that using regular context document still works." );
equals( jQuery(document.body).add("#form").length, 2, "Using a body context." );
equals( jQuery(document.body).add("#html").length, 1, "Using a body context." );

equals( jQuery(document).add("#form", document).length, 2, "Use a passed in document context." );
equals( jQuery(document).add("#form", document.body).length, 2, "Use a passed in body context." );
equals( jQuery(document).add("#html", document.body).length, 1, "Use a passed in body context." );
});

test("each(Function)", function() {
expect(1);
var div = jQuery("div");

0 comments on commit b0fe380

Please sign in to comment.
You can’t perform that action at this time.