Make sure .clone(true) correctly clones namespaced events. Fixes #4537.
[jquery.git] / src / manipulation.js
index 19a6c22..cd0732c 100644 (file)
@@ -7,7 +7,7 @@ var rinlinejQuery = / jQuery\d+="(?:\d+|null)"/g,
        rtbody = /<tbody/i,
        rhtml = /<|&#?\w+;/,
        rnocache = /<(?:script|object|embed|option|style)/i,
-       // checked="checked" or checked (html5)
+       // checked="checked" or checked
        rchecked = /checked\s*(?:[^=]|=\s*.checked.)/i,
        wrapMap = {
                option: [ 1, "<select multiple='multiple'>", "</select>" ],
@@ -159,7 +159,7 @@ jQuery.fn.extend({
                                }
 
                                if ( elem.parentNode ) {
-                                        elem.parentNode.removeChild( elem );
+                                       elem.parentNode.removeChild( elem );
                                }
                        }
                }
@@ -353,8 +353,8 @@ function cloneCopyEvent( src, dest ) {
        }
 
        var internalKey = jQuery.expando,
-                       oldData = jQuery.data( src ),
-                       curData = jQuery.data( dest, oldData );
+               oldData = jQuery.data( src ),
+               curData = jQuery.data( dest, oldData );
 
        // Switch to use the internal data object, if it exists, for the next
        // stage of data copying
@@ -368,7 +368,7 @@ function cloneCopyEvent( src, dest ) {
 
                        for ( var type in events ) {
                                for ( var i = 0, l = events[ type ].length; i < l; i++ ) {
-                                       jQuery.event.add( dest, type, events[ type ][ i ], events[ type ][ i ].data );
+                                       jQuery.event.add( dest, type + ( events[ type ][ i ].namespace ? "." : "" ) + events[ type ][ i ].namespace, events[ type ][ i ], events[ type ][ i ].data );
                                }
                        }
                }
@@ -537,7 +537,7 @@ jQuery.extend({
                }
                // Return the cloned set
                return clone;
-  },
+},
        clean: function( elems, context, fragment, scripts ) {
                context = context || document;