From 1533bf7c7794d8e078e7ce5e36de6d190651540a Mon Sep 17 00:00:00 2001 From: John Resig Date: Sat, 24 Apr 2010 14:15:45 -0700 Subject: [PATCH] Expose jQuery.uuid (use with caution) and make sure the expando property is used in the events module. --- speed/benchmarker.css | 0 speed/benchmarker.js | 0 speed/index.html | 0 src/data.js | 12 ++++++++---- src/event.js | 6 +++--- 5 files changed, 11 insertions(+), 7 deletions(-) mode change 100755 => 100644 speed/benchmarker.css mode change 100755 => 100644 speed/benchmarker.js mode change 100755 => 100644 speed/index.html diff --git a/speed/benchmarker.css b/speed/benchmarker.css old mode 100755 new mode 100644 diff --git a/speed/benchmarker.js b/speed/benchmarker.js old mode 100755 new mode 100644 diff --git a/speed/index.html b/speed/index.html old mode 100755 new mode 100644 diff --git a/src/data.js b/src/data.js index cddd8bde..a4c4e4b6 100644 --- a/src/data.js +++ b/src/data.js @@ -1,9 +1,13 @@ -var expando = "jQuery" + jQuery.now(), uuid = 0, windowData = {}; +var windowData = {}; jQuery.extend({ cache: {}, - - expando: expando, + + // Please use with caution + uuid: 0, + + // Unique for each copy of jQuery on the page + expando: "jQuery" + jQuery.now(), // The following elements throw uncatchable exceptions if you // attempt to add expando properties to them. @@ -36,7 +40,7 @@ jQuery.extend({ // Compute a unique ID for the element } else if ( !id ) { - elem[ jQuery.expando ] = id = ++uuid; + elem[ jQuery.expando ] = id = ++jQuery.uuid; } // Avoid generating a new cache unless none exists and we diff --git a/src/event.js b/src/event.js index 588a7979..45f2202c 100644 --- a/src/event.js +++ b/src/event.js @@ -270,7 +270,7 @@ jQuery.event = { if ( !bubbling ) { event = typeof event === "object" ? // jQuery.Event object - event[expando] ? event : + event[ jQuery.expando ] ? event : // Object literal jQuery.extend( jQuery.Event(type), event ) : // Just the event type (string) @@ -428,7 +428,7 @@ jQuery.event = { props: "altKey attrChange attrName bubbles button cancelable charCode clientX clientY ctrlKey currentTarget data detail eventPhase fromElement handler keyCode layerX layerY metaKey newValue offsetX offsetY originalTarget pageX pageY prevValue relatedNode relatedTarget screenX screenY shiftKey srcElement target toElement view wheelDelta which".split(" "), fix: function( event ) { - if ( event[ expando ] ) { + if ( event[ jQuery.expando ] ) { return event; } @@ -557,7 +557,7 @@ jQuery.Event = function( src ) { this.timeStamp = jQuery.now(); // Mark it as fixed - this[ expando ] = true; + this[ jQuery.expando ] = true; }; function returnFalse() {