From ed5731dcc41db31fd699d1f4e4b250e83b10308e Mon Sep 17 00:00:00 2001 From: jeresig Date: Thu, 17 Dec 2009 14:17:05 -0500 Subject: [PATCH] Revert the changes from 65ebf57c1e5d7fa96536b66d4fcacbafad8dc1e5, they were ineffectual against IE's insanity: http://ejohn.org/files/bugs/fragment/ Used a different tactic instead (just don't return a fragment from .parent()). Fixes #5638. --- src/core.js | 9 ++------- src/traversing.js | 2 +- 2 files changed, 3 insertions(+), 8 deletions(-) diff --git a/src/core.js b/src/core.js index 8f81c52..1edf98e 100644 --- a/src/core.js +++ b/src/core.js @@ -53,7 +53,7 @@ var jQuery = function( selector, context ) { jQuery.fn = jQuery.prototype = { init: function( selector, context ) { - var match, elem, ret, doc, parent; + var match, elem, ret, doc; // Handle $(""), $(null), or $(undefined) if ( !selector ) { @@ -88,12 +88,7 @@ jQuery.fn = jQuery.prototype = { } else { ret = buildFragment( [ match[1] ], [ doc ] ); - parent = ret.cacheable ? ret.fragment.cloneNode(true) : ret.fragment; - selector = []; - - while ( parent.firstChild ) { - selector.push( parent.removeChild( parent.firstChild ) ); - } + selector = (ret.cacheable ? ret.fragment.cloneNode(true) : ret.fragment).childNodes; } // HANDLE: $("#id") diff --git a/src/traversing.js b/src/traversing.js index 6375d9d..d30e4e6 100644 --- a/src/traversing.js +++ b/src/traversing.js @@ -161,7 +161,7 @@ jQuery.fn.extend({ }); jQuery.each({ - parent: function(elem){return elem.parentNode;}, + parent: function(elem){var parent = elem.parentNode; return parent && parent.nodeType !== 11 ? parent : null;}, parents: function(elem){return jQuery.dir(elem,"parentNode");}, parentsUntil: function(elem,i,until){return jQuery.dir(elem,"parentNode",until);}, next: function(elem){return jQuery.nth(elem,2,"nextSibling");}, -- 1.7.10.4