aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRichard Gibson <richard.gibson@gmail.com>2019-04-29 13:26:53 -0400
committerMichał Gołębiowski-Owczarek <m.goleb@gmail.com>2019-04-29 20:50:00 +0200
commiteb6c0a7c97b1b3cf00144de12d945c9c569f935c (patch)
treef68ac7165025a2393dd975ef68b0b575fac4c157
parentddfa83766478268391bc9da96683fc0d4973fcfe (diff)
downloadjquery-eb6c0a7c97b1b3cf00144de12d945c9c569f935c.tar.gz
jquery-eb6c0a7c97b1b3cf00144de12d945c9c569f935c.zip
Event: Prevent leverageNative from registering duplicate dummy handlers
(cherry-picked from 6c1e7dbf7311ae7c0c31ba335fe216185047ae5f) Closes gh-4353
-rw-r--r--src/event.js10
1 files changed, 5 insertions, 5 deletions
diff --git a/src/event.js b/src/event.js
index 48d9095c9..3ff11ad0b 100644
--- a/src/event.js
+++ b/src/event.js
@@ -479,8 +479,7 @@ jQuery.event = {
// Claim the first handler
if ( rcheckableType.test( el.type ) &&
- el.click && nodeName( el, "input" ) &&
- dataPriv.get( el, "click" ) === undefined ) {
+ el.click && nodeName( el, "input" ) ) {
// dataPriv.set( el, "click", ... )
leverageNative( el, "click", returnTrue );
@@ -497,8 +496,7 @@ jQuery.event = {
// Force setup before triggering a click
if ( rcheckableType.test( el.type ) &&
- el.click && nodeName( el, "input" ) &&
- dataPriv.get( el, "click" ) === undefined ) {
+ el.click && nodeName( el, "input" ) ) {
leverageNative( el, "click" );
}
@@ -539,7 +537,9 @@ function leverageNative( el, type, expectSync ) {
// Missing expectSync indicates a trigger call, which must force setup through jQuery.event.add
if ( !expectSync ) {
- jQuery.event.add( el, type, returnTrue );
+ if ( dataPriv.get( el, type ) === undefined ) {
+ jQuery.event.add( el, type, returnTrue );
+ }
return;
}