Event: Don't break focus triggering after .on(focus).off(focus)
#4885
+20
−4
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Summary
The
_default
function in the special event settings for focus/blur hasalways returned
true
since gh-4813 as the event was already being firedfrom
leverageNative
. However, that only works if there's an active handleron that element; this made a quick consecutive call:
make subsequent
.trigger( "focus" )
calls to not do any triggering.The solution, already used in a similar
_default
method for theclick
event,is to check for the
dataPriv
entry on the element for the focus event(similarly for blur).
Fixes gh-4867
+10 bytes
Checklist
If needed, a docs issue/PR was created at https://github.com/jquery/api.jquery.com