Changeset 3298
- Timestamp:
- 09/15/07 02:24:44 (1 year ago)
- Files:
-
- 1 modified
-
trunk/jquery/src/core.js (modified) (4 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/jquery/src/core.js
r3296 r3298 14 14 var _jQuery = jQuery; 15 15 16 var jQuery = window.jQuery = function(a,c) { 17 // If the context is global, return a new object 18 if ( window == this || !this.init ) 19 return new jQuery(a,c); 20 21 return this.init(a,c); 16 var jQuery = window.jQuery = function(selector, context) { 17 // If the context is a namespace object, return a new object 18 return this instanceof jQuery ? 19 this.init(selector, context) : 20 new jQuery(selector, context); 22 21 }; 23 22 … … 32 31 33 32 jQuery.fn = jQuery.prototype = { 34 init: function( a,c) {33 init: function(selector, context) { 35 34 // Make sure that a selection was provided 36 a = a|| document;35 selector = selector || document; 37 36 38 37 // Handle HTML strings 39 if ( typeof a== "string" ) {40 var m = quickExpr.exec( a);41 if ( m && (m[1] || !c ) ) {38 if ( typeof selector == "string" ) { 39 var m = quickExpr.exec(selector); 40 if ( m && (m[1] || !context) ) { 42 41 // HANDLE: $(html) -> $(array) 43 42 if ( m[1] ) 44 a = jQuery.clean( [ m[1] ], c);43 selector = jQuery.clean( [ m[1] ], context ); 45 44 46 45 // HANDLE: $("#id") … … 51 50 // by name instead of ID 52 51 if ( tmp.id != m[3] ) 53 return jQuery().find( a);52 return jQuery().find( selector ); 54 53 else { 55 54 this[0] = tmp; … … 58 57 } 59 58 else 60 a= [];59 selector = []; 61 60 } 62 61 63 62 // HANDLE: $(expr) 64 63 } else 65 return new jQuery( c ).find( a);64 return new jQuery( context ).find( selector ); 66 65 67 66 // HANDLE: $(function) 68 67 // Shortcut for document ready 69 } else if ( jQuery.isFunction( a) )70 return new jQuery(document)[ jQuery.fn.ready ? "ready" : "load" ]( a);68 } else if ( jQuery.isFunction(selector) ) 69 return new jQuery(document)[ jQuery.fn.ready ? "ready" : "load" ]( selector ); 71 70 72 71 return this.setArray( 73 72 // HANDLE: $(array) 74 a.constructor == Array && a||73 selector.constructor == Array && selector || 75 74 76 75 // HANDLE: $(arraylike) 77 76 // Watch for when an array-like object is passed as the selector 78 ( a.jquery || a.length && a != window && !a.nodeType && a[0] != undefined && a[0].nodeType) && jQuery.makeArray( a) ||77 (selector.jquery || selector.length && selector != window && !selector.nodeType && selector[0] != undefined && selector[0].nodeType) && jQuery.makeArray( selector ) || 79 78 80 79 // HANDLE: $(*) 81 [ a] );80 [ selector ] ); 82 81 }, 83 82