diff --git a/src/event.js b/src/event.js index c0238cca..fa8be8d2 100644 --- a/src/event.js +++ b/src/event.js @@ -263,11 +263,18 @@ jQuery.event = { }, fix: function(event) { + // Short-circuit if the event has already been fixed by jQuery.event.fix + if ( event[ expando ] ) + return event; + // store a copy of the original event object // and clone to set read-only properties var originalEvent = event; event = jQuery.extend({}, originalEvent); + // Mark the event as fixed by jQuery.event.fix + event[ expando ] = true; + // add preventDefault and stopPropagation since // they will not work on the clone event.preventDefault = function() {