diff options
author | John Resig <jeresig@gmail.com> | 2007-09-10 18:39:16 +0000 |
---|---|---|
committer | John Resig <jeresig@gmail.com> | 2007-09-10 18:39:16 +0000 |
commit | 6476b15f1a6c3651c18e354d41ee0ab9b9a23e16 (patch) | |
tree | f3a703de6e73c152e770db4c385a2d372010c4bc | |
parent | 899ee03d37b6cbe6d0e8abc497026d611325cfba (diff) | |
download | jquery-6476b15f1a6c3651c18e354d41ee0ab9b9a23e16.tar.gz jquery-6476b15f1a6c3651c18e354d41ee0ab9b9a23e16.zip |
Made the expando code attach properties to an anonymous object, as opposed to the global window object, and fixed a bug where .removeAttribute() tried to fire even if it didn't exist.
-rw-r--r-- | src/core.js | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/src/core.js b/src/core.js index 969f3d40b..140208d16 100644 --- a/src/core.js +++ b/src/core.js @@ -440,7 +440,7 @@ jQuery.extend = jQuery.fn.extend = function() { return target; }; -var expando = "jQuery" + (new Date()).getTime(), uuid = 0; +var expando = "jQuery" + (new Date()).getTime(), uuid = 0, win = {}; jQuery.extend({ noConflict: function(deep) { @@ -485,6 +485,8 @@ jQuery.extend({ cache: {}, data: function( elem, name, data ) { + elem = elem == window ? win : elem; + var id = elem[ expando ]; // Compute a unique ID for the element @@ -505,6 +507,8 @@ jQuery.extend({ }, removeData: function( elem, name ) { + elem = elem == window ? win : elem; + var id = elem[ expando ]; // If we want to remove a specific section of the element's data @@ -528,7 +532,8 @@ jQuery.extend({ } catch(e){ // IE has trouble directly removing the expando // but it's ok with using removeAttribute - elem.removeAttribute( expando ); + if ( elem.removeAttribute ) + elem.removeAttribute( expando ); } // Completely remove the data cache |