Skip to content
Permalink
Browse files

Refactor clone a bit to only create one clone on any given codepath

  • Loading branch information...
timmywil committed Nov 8, 2011
1 parent 95cd200 commit f0e43fad376830437a3607ccc146635b8dfb4e83
Showing with 6 additions and 8 deletions.
  1. +4 −6 src/manipulation.js
  2. +2 −2 test/unit/manipulation.js
@@ -578,7 +578,10 @@ jQuery.extend({
var srcElements,
destElements,
i,
clone = elem.cloneNode( true );
// IE<=8 does not properly clone detached, unknown element nodes
clone = jQuery.support.html5Clone || !rnoshimcache.test( "<" + elem.nodeName ) ?
elem.cloneNode( true ) :
shimCloneNode( elem );

if ( (!jQuery.support.noCloneEvent || !jQuery.support.noCloneChecked) &&
(elem.nodeType === 1 || elem.nodeType === 11) && !jQuery.isXMLDoc(elem) ) {
@@ -588,11 +591,6 @@ jQuery.extend({
// proprietary methods to clear the events. Thanks to MooTools
// guys for this hotness.

// IE<=8 does not properly clone detached, unknown element nodes
if ( rnoshimcache.test( "<" + elem.nodeName ) ) {
clone = shimCloneNode( elem );
}

cloneFixAttributes( elem, clone );

// Using Sizzle here is crazy slow, so we use getElementsByTagName instead
@@ -28,10 +28,10 @@ var testText = function(valueObj) {

// Blackberry 4.6 doesn't maintain comments in the DOM
equal( jQuery("#nonnodes")[0].childNodes.length < 3 ? 8 : j[2].nodeType, 8, "Check node,textnode,comment with text()" );
}
};

test("text(String)", function() {
testText(bareObj)
testText(bareObj);
});

test("text(Function)", function() {

0 comments on commit f0e43fa

Please sign in to comment.
You can’t perform that action at this time.