X-Git-Url: http://git.asbjorn.biz/?a=blobdiff_plain;f=src%2Fcore.js;h=23b4a57dd14379174a912851c0b2219009bf62da;hb=a073ee85963518be605018550eeb530180e2287f;hp=f00d9b0cd1db5620c787d7056143961ee0001e3d;hpb=2764127335126601b90aac6488ef927dce1eceda;p=jquery.git diff --git a/src/core.js b/src/core.js index f00d9b0..23b4a57 100644 --- a/src/core.js +++ b/src/core.js @@ -18,7 +18,7 @@ var window = this, jQuery = window.jQuery = window.$ = function( selector, context ) { // The jQuery object is actually just the init constructor 'enhanced' - return selector === undefined ? + return arguments.length === 0 ? rootjQuery : new jQuery.fn.init( selector, context ); }, @@ -36,12 +36,6 @@ var window = this, // Save a reference to the core toString method toString = Object.prototype.toString; -// Define the main jQuery method -jQuery = window.jQuery = window.$ = function( selector, context ) { - // The jQuery object is actually just the init constructor 'enhanced' - return new jQuery.fn.init( selector, context ); -}; - jQuery.fn = jQuery.prototype = { init: function( selector, context ) { var match, elem, ret; @@ -182,10 +176,16 @@ jQuery.fn = jQuery.prototype = { // Determine the position of an element within // the matched set of elements index: function( elem ) { + if ( !elem || typeof elem === "string" ) { + return jQuery.inArray( this[0], + // If it receives a string, the selector is used + // If it receives nothing, the siblings are used + elem ? jQuery( elem ) : this.parent().children() ); + } // Locate the position of the desired element return jQuery.inArray( // If it receives a jQuery object, the first element is used - elem && elem.jquery ? elem[0] : elem, this ); + elem.jquery ? elem[0] : elem, this ); }, is: function( selector ) { @@ -355,7 +355,7 @@ jQuery.extend({ if ( array != null ) { i = array.length; - + // The window, strings (and functions) also have 'length' if ( i == null || typeof array === "string" || jQuery.isFunction(array) || array.setInterval ) { ret[0] = array; @@ -383,7 +383,7 @@ jQuery.extend({ // We have to loop this way because IE & Opera overwrite the length // expando of getElementsByTagName var i = 0, elem, pos = first.length; - + // Also, we need to make sure that the correct elements are being returned // (IE returns comment nodes in a '*' query) if ( !jQuery.support.getAll ) {