Add test for jQuery(jQueryObj) cloning and simplify new get() code

This commit is contained in:
Yehuda Katz 2009-07-17 17:33:44 +00:00
parent 88bd74c732
commit 1a7f72e7fe
2 changed files with 6 additions and 4 deletions

View file

@ -43,9 +43,8 @@ jQuery.fn = jQuery.prototype = {
// Handle $(DOMElement)
if ( selector.nodeType ) {
this[0] = selector;
this.context = this[0] = selector;
this.length++;
this.context = selector;
return this;
}
@ -132,7 +131,7 @@ jQuery.fn = jQuery.prototype = {
this.toArray() :
// Return just the object
( num < 0 ? this.toArray.call(this, num)[0] : this[ num ] );
( num < 0 ? this.toArray(num)[ 0 ] : this[ num ] );
},
// Take an array of elements and push it onto the stack

View file

@ -12,7 +12,7 @@ test("Basic requirements", function() {
});
test("jQuery()", function() {
expect(11);
expect(12);
// Basic constructor's behavior
@ -21,6 +21,9 @@ test("jQuery()", function() {
equals( jQuery(null).length, 0, "jQuery(null) === jQuery([])" );
equals( jQuery("").length, 0, "jQuery('') === jQuery([])" );
var obj = jQuery("div")
equals( jQuery(obj).selector, "div", "jQuery(jQueryObj) == jQueryObj" );
// can actually yield more than one, when iframes are included, the window is an array as well
equals( 1, jQuery(window).length, "Correct number of elements generated for jQuery(window)" );