git.asbjorn.biz
/
jquery.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
041fd5f
)
Cut down on some more function calls for jQuery(...). Everything points back to the...
author
John Resig
<jeresig@gmail.com>
Wed, 25 Feb 2009 14:23:25 +0000
(14:23 +0000)
committer
John Resig
<jeresig@gmail.com>
Wed, 25 Feb 2009 14:23:25 +0000
(14:23 +0000)
src/core.js
patch
|
blob
|
history
diff --git
a/src/core.js
b/src/core.js
index
a67b5f0
..
d99f401
100644
(file)
--- a/
src/core.js
+++ b/
src/core.js
@@
-10,7
+10,9
@@
var
jQuery = window.jQuery = window.$ = function( selector, context ) {
// The jQuery object is actually just the init constructor 'enhanced'
jQuery = window.jQuery = window.$ = function( selector, context ) {
// The jQuery object is actually just the init constructor 'enhanced'
- return new jQuery.fn.init( selector, context );
+ return selector === undefined ?
+ rootjQuery :
+ new jQuery.fn.init( selector, context );
},
// A simple way to check for HTML strings or ID strings
},
// A simple way to check for HTML strings or ID strings
@@
-21,15
+23,9
@@
var
jQuery.fn = jQuery.prototype = {
init: function( selector, context ) {
jQuery.fn = jQuery.prototype = {
init: function( selector, context ) {
- // Make sure that a selection was provided
- if ( selector === undefined ) {
- selector = document;
- }
-
- // Handle "", null
+ // Handle $("") or $(null)
if ( !selector ) {
this.length = 0;
if ( !selector ) {
this.length = 0;
- this.context = document;
return this;
}
return this;
}
@@
-60,32
+56,30
@@
jQuery.fn = jQuery.prototype = {
// Handle the case where IE and Opera return items
// by name instead of ID
if ( elem && elem.id != match[3] ) {
// Handle the case where IE and Opera return items
// by name instead of ID
if ( elem && elem.id != match[3] ) {
- return jQuery().find( selector );
+ return rootjQuery.find( selector );
}
// Otherwise, we inject the element directly into the jQuery object
}
// Otherwise, we inject the element directly into the jQuery object
- var ret = jQuery( elem || [] );
+ var ret = jQuery( elem || null );
ret.context = document;
ret.selector = selector;
return ret;
}
ret.context = document;
ret.selector = selector;
return ret;
}
- // HANDLE: $(expr, [context])
- // (which is just equivalent to: $(content).find(expr)
- } else if ( !context || context.nodeType ) {
- this[0] = context || document;
- this.length = 1;
- this.context = context;
- return this.find( selector );
+ // HANDLE: $(expr, $(...))
+ } else if ( !context || context.jquery ) {
+ return (context || rootjQuery).find( selector );
+ // HANDLE: $(expr, context)
+ // (which is just equivalent to: $(content).find(expr)
} else {
} else {
- return (context.jquery ? context : jQuery( context )).find( selector );
+ return jQuery( context ).find( selector );
}
// HANDLE: $(function)
// Shortcut for document ready
} else if ( jQuery.isFunction( selector ) ) {
}
// HANDLE: $(function)
// Shortcut for document ready
} else if ( jQuery.isFunction( selector ) ) {
- return jQuery( document ).ready( selector );
+ return rootjQuery.ready( selector );
}
// Make sure that old selector state is passed along
}
// Make sure that old selector state is passed along
@@
-126,7
+120,7
@@
jQuery.fn = jQuery.prototype = {
// (returning the new matched element set)
pushStack: function( elems, name, selector ) {
// Build a new jQuery matched element set
// (returning the new matched element set)
pushStack: function( elems, name, selector ) {
// Build a new jQuery matched element set
- var ret = jQuery( elems );
+ var ret = jQuery( elems || null );
// Add the old object onto the stack (as a reference)
ret.prevObject = this;
// Add the old object onto the stack (as a reference)
ret.prevObject = this;
@@
-282,7
+276,7
@@
jQuery.fn = jQuery.prototype = {
},
end: function() {
},
end: function() {
- return this.prevObject || jQuery( [] );
+ return this.prevObject || jQuery(null);
},
// For internal use only.
},
// For internal use only.
@@
-1164,6
+1158,9
@@
jQuery.extend({
}
});
}
});
+// All jQuery objects should point back to these
+var rootjQuery = jQuery(document);
+
// Use of jQuery.browser is deprecated.
// It's included for backwards compatibility and plugins,
// although they should work to migrate away.
// Use of jQuery.browser is deprecated.
// It's included for backwards compatibility and plugins,
// although they should work to migrate away.