diff --git a/src/jquery/jquery.js b/src/jquery/jquery.js
index da0e582d..470dbdea 100644
--- a/src/jquery/jquery.js
+++ b/src/jquery/jquery.js
@@ -726,7 +726,7 @@ jQuery.fn = jQuery.prototype = {
return this.each(function(){
var obj = this;
- if ( table && this.nodeName == "TABLE" ) {
+ if ( table && this.nodeName == "TABLE" && a[0].nodeName != "THEAD" ) {
var tbody = this.getElementsByTagName("tbody");
if ( !tbody.length ) {
@@ -958,30 +958,36 @@ jQuery.extend({
var r = [];
for ( var i = 0; i < a.length; i++ ) {
if ( a[i].constructor == String ) {
+
+ var table = "";
- if ( !a[i].indexOf("
" + a[i] + "";
+ } else if ( !a[i].indexOf("
" + a[i] + "";
} else if ( !a[i].indexOf(" |
" + a[i] + "
";
}
var div = document.createElement("div");
div.innerHTML = a[i];
- if ( tr || td ) {
- div = div.firstChild.firstChild;
- if ( td ) div = div.firstChild;
+ if ( table ) {
+ div = div.firstChild;
+ if ( table != "thead" ) div = div.firstChild;
+ if ( table == "td" ) div = div.firstChild;
}
for ( var j = 0; j < div.childNodes.length; j++ )
r.push( div.childNodes[j] );
- } else if ( a[i].jquery || a[i].length && !a[i].nodeType )
- for ( var k = 0; k < a[i].length; k++ )
- r.push( a[i][k] );
- else if ( a[i] !== null )
- r.push( a[i].nodeType ? a[i] : document.createTextNode(a[i].toString()) );
+ } else if ( a[i].jquery || a[i].length && !a[i].nodeType )
+ for ( var k = 0; k < a[i].length; k++ )
+ r.push( a[i][k] );
+ else if ( a[i] !== null )
+ r.push( a[i].nodeType ? a[i] : document.createTextNode(a[i].toString()) );
}
return r;
},