aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorJohn Resig <jeresig@gmail.com>2009-12-04 23:18:05 -0500
committerJohn Resig <jeresig@gmail.com>2009-12-04 23:18:05 -0500
commit8d1efee3167deedd33bf7f6001823706659704ea (patch)
treedb5ffe72619a083d2af90a551ae7d785c3f74d6f /src
parent25b0ba9f9612583033b902a0e40345463a3a71d0 (diff)
downloadjquery-8d1efee3167deedd33bf7f6001823706659704ea.tar.gz
jquery-8d1efee3167deedd33bf7f6001823706659704ea.zip
Retooled the native triggering code, simplifying it.
Diffstat (limited to 'src')
-rw-r--r--src/event.js12
1 files changed, 7 insertions, 5 deletions
diff --git a/src/event.js b/src/event.js
index acf363b67..3e673d6b9 100644
--- a/src/event.js
+++ b/src/event.js
@@ -257,18 +257,20 @@ jQuery.event = {
nativeHandler = elem[ "on" + type ];
// prevent IE from throwing an error for some elements with some event types, see #3533
} catch (e) {}
- // Handle triggering native .onfoo handlers (and on links since we don't call .click() for links)
- if ( (!nativeFn || (jQuery.nodeName(elem, 'a') && type === "click")) && nativeHandler && nativeHandler.apply( elem, data ) === false ) {
- event.result = false;
- }
+
+ var isClick = jQuery.nodeName(elem, "a") && type === "click";
// Trigger the native events (except for clicks on links)
- if ( !bubbling && nativeFn && !event.isDefaultPrevented() && !(jQuery.nodeName(elem, 'a') && type === "click") ) {
+ if ( !bubbling && nativeFn && !event.isDefaultPrevented() && !isClick ) {
this.triggered = true;
try {
nativeFn();
// prevent IE from throwing an error for some hidden elements
} catch (e) {}
+
+ // Handle triggering native .onfoo handlers
+ } else if ( nativeHandler && nativeHandler.apply( elem, data ) === false ) {
+ event.result = false;
}
this.triggered = false;