Moved from the old JSMin to using YUIMin for compressing the jQuery source. Additiona...
[jquery.git] / src / core.js
index b5de145..8c4c09b 100644 (file)
@@ -9,6 +9,9 @@
  * $Rev$
  */
 
+// Will speed up references to window, and allows munging its name.
+var window = this;
+
 // Map over jQuery in case of overwrite
 var _jQuery = window.jQuery,
 // Map over the $ in case of overwrite
@@ -24,7 +27,7 @@ var jQuery = window.jQuery = window.$ = function( selector, context ) {
 var quickExpr = /^[^<]*(<(.|\s)+>)[^>]*$|^#([\w-]+)$/,
 
 // Is it a simple selector
-       isSimple = /^.[^:#\[\.]*$/,
+       isSimple = /^.[^:#\[\.,]*$/,
 
 // Will speed up references to undefined, and allows munging its name.
        undefined;
@@ -819,6 +822,14 @@ jQuery.extend({
                if ( typeof context.createElement === "undefined" )
                        context = context.ownerDocument || context[0] && context[0].ownerDocument || document;
 
+               // If a single string is passed in and it's a single tag
+               // just do a createElement and skip the rest
+               if ( !fragment && elems.length === 1 && typeof elems[0] === "string" ) {
+                       var match = /^<(\w+)\/?>$/.exec(elems[0]);
+                       if ( match )
+                               return [ context.createElement( match[1] ) ];
+               }
+
                var ret = [], scripts = [], div = context.createElement("div");
 
                jQuery.each(elems, function(i, elem){
@@ -915,9 +926,6 @@ jQuery.extend({
 
                });
 
-               // Clean up
-               div.innerHTML = "";
-               
                if ( fragment ) {
                        for ( var i = 0; ret[i]; i++ ) {
                                var node = ret[i];