From 0b6afcedd22aaffb96d3d45b9b220a16229e2f7c Mon Sep 17 00:00:00 2001 From: Dave Methvin Date: Thu, 23 Dec 2010 16:21:14 -0500 Subject: When a native browser event is bubbling up the DOM, make sure that the correct isDefaultPrevented value is reflected by jQuery's Event object. Fixes #7793. --- src/event.js | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'src') diff --git a/src/event.js b/src/event.js index fd470e718..80e2af66b 100644 --- a/src/event.js +++ b/src/event.js @@ -600,6 +600,12 @@ jQuery.Event = function( src ) { if ( src && src.type ) { this.originalEvent = src; this.type = src.type; + // Events bubbling up the document may have been marked as prevented + // by a handler lower down the tree; reflect the correct value. + this.isDefaultPrevented = + (src.defaultPrevented===true ? true : + src.getPreventDefault ? src.getPreventDefault() : + src.returnValue===false) ? returnTrue : returnFalse; // Event type } else { this.type = src; -- cgit v1.2.3 From c9e8a95709e12c6838a312850ce645e96a53ff5d Mon Sep 17 00:00:00 2001 From: Dave Methvin Date: Fri, 24 Dec 2010 09:53:39 -0500 Subject: Simplify the check for isDefaultPrevented. --- src/event.js | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) (limited to 'src') diff --git a/src/event.js b/src/event.js index 80e2af66b..b61b11e64 100644 --- a/src/event.js +++ b/src/event.js @@ -602,10 +602,8 @@ jQuery.Event = function( src ) { this.type = src.type; // Events bubbling up the document may have been marked as prevented // by a handler lower down the tree; reflect the correct value. - this.isDefaultPrevented = - (src.defaultPrevented===true ? true : - src.getPreventDefault ? src.getPreventDefault() : - src.returnValue===false) ? returnTrue : returnFalse; + this.isDefaultPrevented = (src.defaultPrevented || src.returnValue === false || + src.getPreventDefault && src.getPreventDefault()) ? returnTrue : returnFalse; // Event type } else { this.type = src; -- cgit v1.2.3