Found a better detect for deleting an expando, added back in removeAttribute as it...
[jquery.git] / src / manipulation.js
index 4e7a31e..196f230 100644 (file)
@@ -547,7 +547,9 @@ jQuery.extend({
        },
        
        cleanData: function( elems ) {
-               var data, id, cache = jQuery.cache, special = jQuery.event.special;
+               var data, id, cache = jQuery.cache,
+                       special = jQuery.event.special,
+                       deleteExpando = jQuery.support.deleteExpando;
                
                for ( var i = 0, elem; (elem = elems[i]) != null; i++ ) {
                        id = elem[ jQuery.expando ];
@@ -566,7 +568,12 @@ jQuery.extend({
                                        }
                                }
                                
-                               removeExpando( elem );
+                               if ( deleteExpando ) {
+                                       delete elem[ jQuery.expando ];
+
+                               } else if ( elem.removeAttribute ) {
+                                       elem.removeAttribute( jQuery.expando );
+                               }
                                
                                delete cache[ id ];
                        }