From: John Resig Date: Thu, 20 Jan 2011 19:51:30 +0000 (-0500) Subject: Merge branch 'fix-7853-add-context' of https://github.com/dmethvin/jquery into dmethv... X-Git-Url: http://git.asbjorn.biz/?p=jquery.git;a=commitdiff_plain;h=2e2d5e9db5ee9886644d75954d327e6d284e2da8;hp=c97b6ee36a1402b6f4bb3f6893b687eb294c41df Merge branch 'fix-7853-add-context' of https://github.com/dmethvin/jquery into dmethvin-fix-7853-add-context --- diff --git a/src/traversing.js b/src/traversing.js index 929547c..90601df 100644 --- a/src/traversing.js +++ b/src/traversing.js @@ -141,7 +141,7 @@ jQuery.fn.extend({ add: function( selector, context ) { var set = typeof selector === "string" ? - jQuery( selector, context || this.context ) : + jQuery( selector, context ) : jQuery.makeArray( selector ), all = jQuery.merge( this.get(), set ); diff --git a/test/unit/traversing.js b/test/unit/traversing.js index f0471d7..56fed22 100644 --- a/test/unit/traversing.js +++ b/test/unit/traversing.js @@ -440,12 +440,13 @@ test("add(String|Element|Array|undefined)", function() { 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." ); + + deepEqual( jQuery( "#firstp" ).add( "#ap" ).get(), q( "firstp", "ap" ), "Add selector to selector " ); + deepEqual( jQuery( document.getElementById("firstp") ).add( "#ap" ).get(), q( "firstp", "ap" ), "Add gEBId to selector" ); + deepEqual( jQuery( document.getElementById("firstp") ).add( document.getElementById("ap") ).get(), q( "firstp", "ap" ), "Add gEBId to gEBId" ); + + var ctx = document.getElementById("firstp"); + deepEqual( jQuery( "#firstp" ).add( "#ap", ctx ).get(), q( "firstp" ), "Add selector to selector " ); + deepEqual( jQuery( document.getElementById("firstp") ).add( "#ap", ctx ).get(), q( "firstp" ), "Add gEBId to selector, not in context" ); + deepEqual( jQuery( document.getElementById("firstp") ).add( "#ap", document.getElementsByTagName("body")[0] ).get(), q( "firstp", "ap" ), "Add gEBId to selector, in context" ); });