Dave Methvin
683be093a6
Catch more cases where special events were incorrectly removed.
...
We can't take the blow-it-all-away shortcut because something in the middle of the list may be a mapped special event. On the bright side, -22!
2011-11-13 20:50:36 -05:00
Dave Methvin
774eba3388
Avoid collateral damage when removing bindType/delegateType special events.
2011-11-10 21:53:07 -05:00
Dave Methvin
5ba7f60822
Ensure the hover event doesn't match hovercraft. Witchcraft, maybe.
2011-11-10 18:05:58 -05:00
Dave Methvin
e977a85b87
The special.handle hook is for origType, not the mapped type.
2011-11-09 21:51:55 -05:00
Dave Methvin
dd363d2c0f
Fix #10705 . Don't bail too soon in .off()
event string processing.
2011-11-09 21:29:15 -05:00
Dave Methvin
39f9b846e7
Fix #10712 . Deal with focus/blur morphing to focusin/focusout.
2011-11-08 23:08:04 -05:00
Dave Methvin
45101de696
Fix #10717 , .trigger("load") on images can't bubble to window.
...
This means no manually triggered event named "load" can bubble, so avoid that name for delegated custom events.
2011-11-08 19:32:25 -05:00
Daniel Herman
5ba98fe324
Replace .bind with .on when building event aliases
2011-11-07 18:07:54 -05:00
Dave Methvin
13aa84580a
Fix #10676 . Remove wheelDelta
from the event props list.
...
A cross-browser solution is best handled in a plugin such as jquery-mousewheel.js .
2011-11-07 11:15:18 -05:00
Dave Methvin
90c907e8b6
Fix #10701 , .preventDefault if an inline handler returns false.
...
Baby unicorns are slapped each time you use inline handlers, so do it sparingly.
2011-11-07 11:07:36 -05:00
Dave Methvin
a7e911b7fe
Since we fixed .is(POS) let's use it and save bytes.
...
Also, creates a single jQuery object and reuses it in the delegation-test loop to make it more performancy.
2011-11-06 20:12:00 -05:00
Dave Methvin
83c72eaa9c
Remove forever-alone regexps in event.js
...
These should have been removed during the event refactor.
2011-11-06 14:49:31 -05:00
Dave Methvin
5c0c86378a
DRY the hover pseudo-event, get the type right, allow override.
...
Now with working unit test for extra correctness! If external code defines a special.hover event, we won't string-hack "hover" into "mouseenter mouseleave".
2011-10-27 17:11:40 -04:00
Dave Methvin
df4a160be7
Pass correct arg list to special._default. Thanks @mikaelkaron!
2011-10-27 16:02:54 -04:00
Rick Waldron
f0cf49fee2
Cleanup spacing in events.js. Fixes #10601
2011-10-27 15:31:35 -04:00
Dave Methvin
35bc30cd87
Fix #10576 . Add alias for jQuery.event.handle so voyeur code still works.
...
Between new 1.7 special event hooks and jQuery.event.simulate() we have a much cleaner solution than the people calling jQuery.event.handle are doing, but we shouldn't break their use of this undocumented internal interface for now.
2011-10-26 16:02:20 -04:00
Dave Methvin
fc13f5b6ce
Fix #10575 . Undeclared matched
var hosed recursive delegate calls.
...
Thanks davidmurdoch for staying with this bug!
2011-10-25 13:43:27 -04:00
Dave Methvin
746074f0f7
Remove attribute match from quickIs
...
As @timmywil points out, attributes and properties are confused by IE6/7. This commit also reworks the unit test case to do a better job of checking className matches.
2011-10-24 18:05:53 -04:00
Dave Methvin
ee3eb6cabf
Fix #10567 . Make sure quickIs matches correct class name.
2011-10-24 17:26:43 -04:00
Dave Methvin
84d2307e0e
Fix #10563 . Ensure event.currentTarget==this if delegated.
...
Now, event.delegateTarget is always the element where the event was handled, regardless of whether delegated handlers are attached.
2011-10-24 11:18:20 -04:00
Dave Methvin
560c33b395
Stop global event bubbling using onlyHandlers flag.
2011-10-24 11:18:19 -04:00
Dave Methvin
4ac6f8d9d3
Make jQuery().off(event) work for delegated events.
...
Logic to handle detaching by event was in both .off() and jQuery.event.remove; now it's only in .off(). It's a bit of a strange case since the event object (not the jQuery set) specifies the element.
2011-10-24 11:18:18 -04:00
Dave Methvin
b208042f52
Fold dispatch function into main event dispatch.
2011-10-24 11:18:17 -04:00
Dave Methvin
470cc07167
Don't add an empty list of handlers.
2011-10-24 11:18:15 -04:00
Dave Methvin
d28ab68699
Make event.currentTarget the delegate node, always.
...
This lets us use currentTarget for its intended use and avoids creating a non-standard delegateTarget property.
2011-10-24 11:18:14 -04:00
Dave Methvin
9fabe2028f
Don't run direct handlers if delegate did .stopPropagation().
2011-10-24 11:18:13 -04:00
Mathias Bynens
a6bec46170
Landing pull request 554. #10531 : Remove layerX
and layerY
Fixes #10531 .
...
More Details:
- https://github.com/jquery/jquery/pull/554
- http://bugs.jquery.com/ticket/10531
2011-10-22 16:14:47 -04:00
Dave Methvin
0a3cab8d49
Fix #10489 . Disconnected elements don't bubble to document.
2011-10-13 16:30:40 -04:00
Dave Methvin
6afc2c074b
Fixes #10477 . Get .off(type, null, fn)
right.
2011-10-11 20:31:45 -04:00
Dave Methvin
511c9fe763
Fix focus/blur unit test issues. Reopens #6705 .
...
In the event refactor, I tried to have the focus/blur events trigger the focus/blur plus focusin/focusout events but this doesn't handle various real-world cases that expect a trigger()ed jQuery handler to run and be able to pass data even if the native event shouldn't fire.
This reopens a bug that causes a double-fire of
inline event handlers.
2011-10-10 23:14:08 -04:00
Dave Methvin
307b1a3d77
Fix #10468 . Remove jQuery.event.proxy and jQuery.event.guid.
...
These were deprecated several versions ago and have always been undocumented. Use jQuery.proxy() and jQuery.guid instead.
2011-10-10 21:51:15 -04:00
timmywil
e828d18caa
Minor fix in events; undeclared var from last commit
2011-10-07 11:45:42 -04:00
Rick Waldron
3999d39b84
Additional nits
2011-10-06 16:36:15 -04:00
Rick Waldron
4fd70e7e02
Style sweep
2011-10-06 10:21:23 -04:00
Dave Methvin
e5b16e3356
Rename jQuery.event.propHooks to .fixHooks.
...
We already have jQuery.propHooks for the .prop() method, so using the same name for unrelated functionality on a sub-namespace is crazy talk. Since the method involved is jQuery.event.fix(), this will hopefully tie them together. Oh, and it's shorter.
2011-10-05 21:41:32 -04:00
Dave Methvin
96a44a86d8
Fix #10375 . Don't put type
in jQuery.event.props
...
It's already set in jQuery.Event, and copying it can clobber values set by the caller, e.g., the UI widget factory.
2011-09-29 10:34:55 -04:00
Dave Methvin
9c4aaeb0a8
Expose jQuery.event.simulate for use by special event handlers.
2011-09-28 12:05:12 -04:00
Dave Methvin
c7838c3607
Minor cleanups to code. Futile effort to get IE to pass the unit test.
2011-09-25 22:04:52 -04:00
Dave Methvin
b4120a7430
propHooks now an object with props
array and filter
function.
...
Use the originalEvent to grab properties in filter functions since they often won't have been copied to event. Mark a few current props in the main jQuery.event.props list as deprecated, they aren't supported across all browsers.
2011-09-25 19:56:34 -04:00
Dave Methvin
ae27424b30
Merge branch '8789-fun-with-fix' of https://github.com/rwldrn/jquery into fix-8789-rwldrn-fix
...
Conflicts:
src/event.js
test/unit/event.js
2011-09-24 22:37:16 -04:00
Rick Waldron
87e1c62d8e
Moves mouse properties to mouseProps
2011-09-23 15:45:19 -04:00
Rick Waldron
c80ad2524e
current state
2011-09-22 20:02:34 -04:00
Rick Waldron
c7f3b6109e
Removes early return loop, must copy properties
2011-09-22 19:05:06 -04:00
Rick Waldron
14cb04dc94
Shortcircuit fix if possible
2011-09-22 11:30:03 -04:00
Rick Waldron
dc878ae33b
More ref localization
2011-09-22 11:22:56 -04:00
Rick Waldron
7dab8981f8
Remove unnec. empty line
2011-09-22 11:14:45 -04:00
Rick Waldron
737820118b
More reference caching
2011-09-22 11:12:42 -04:00
Rick Waldron
7babc7f203
Cache reference to propHook lookup and result
2011-09-22 11:07:16 -04:00
Rick Waldron
66202aeae5
Restore this.propHooks => jQuery.event.propHooks for better gzip compression. Thanks gnarf
2011-09-22 10:59:29 -04:00
Rick Waldron
2c903b805c
Adds notes re: crash status of fix conditions
2011-09-22 10:52:29 -04:00
Rick Waldron
313bee9de4
Moves key event fixes to own even prop hook defs
2011-09-22 10:43:32 -04:00
Rick Waldron
9ef0394fbd
jQuery.event.propHooks => this.propHooks where possible
2011-09-22 10:35:18 -04:00
Dave Methvin
a4cdbf09ee
Fix #7061 . Lazy-attach to the genuine submit event for delegation.
...
Avoids the problems that arise when we try to trigger submit behavior at clicky-time.
2011-09-21 21:15:00 -04:00
Dave Methvin
03d95530b5
Remove the rarely-used pseudos from quickis.html
...
The cutting will continue until file size is improved.
2011-09-21 09:40:57 -04:00
Dave Methvin
61511d5ab3
Allow IE .trigger()ed events through on a check/radio.
2011-09-20 23:01:07 -04:00
Dave Methvin
b85f222df5
Don't fire change on an already-selected radio.
...
Thanks to Brandon Wallace (@bman654) for his code review. Also tweaks delegatetest.html output.
2011-09-20 22:18:34 -04:00
Dave Methvin
3bd7bed340
Fix #6593 . Don't let onchange trigger twice for elements in IE.
...
This is a major revamp of the approach we use for IE change events. Instead of trying to track and simulate, we lazy-attach real change events to inputs and have only one workaround for check/radio. Somewhat more resource intensive but closes several sticky bugs. The onchange is still triggered for check/radio on blur but no double-trigger on any element occurs.
2011-09-20 20:44:36 -04:00
Rick Waldron
0aaa1fae83
Removes pageX pageY from prop list
2011-09-20 14:54:33 -04:00
Rick Waldron
3d39b7d527
Updates rmouseEvent
2011-09-20 13:14:59 -04:00
Rick Waldron
9fbed020a1
Implements jQuery.event.propHooks. Fixes #8789
2011-09-20 12:54:34 -04:00
Corey Frang
9b3768b968
Landing pull request 512. 1.7 - removeData now takes space separated lists and arrays of keys - Fixes #7323 .
...
More Details:
- https://github.com/jquery/jquery/pull/512
- http://bugs.jquery.com/ticket/7323
2011-09-19 21:16:20 -04:00
Corey Frang
d5f144a7bb
Landing pull request 500. 1.7 - "public data" stored as a key on "internal data" - Fixes #8921 .
...
More Details:
- https://github.com/jquery/jquery/pull/500
- http://bugs.jquery.com/ticket/8921
2011-09-19 16:13:14 -04:00
Dave Methvin
6ece8f138f
Revert "Fix #6593 . Don't trigger change
event twice when simulating it on IE." Add inline handler monitor to delegatetest.html so we can see it fail.
...
This reverts commit e77686495b6e34938575c9c0fe978cb4a0be6f05.
2011-09-19 15:42:32 -04:00
Dave Methvin
6c618ddb0d
Eliminate global variable "l" (!)
2011-09-19 15:42:32 -04:00
Dave Methvin
06e56acb0d
Narrow the invisible-element embargo to focus/blur events.
2011-09-19 15:42:32 -04:00
Dave Methvin
4030de9519
Update "Fix #6593 . Don't trigger change
event twice when simulating it on IE."
...
This reverts commit 3d0de29d5615c1b1d74c72e6272484961a4ba243.
2011-09-19 15:42:32 -04:00
Dave Methvin
8c91da57b9
Fix #9593 . Create a new jQuery.Event rather than a plain object when simulate()ing events. Fix a related issue with not passing src to jQuery.Event constructor.
2011-09-19 15:42:32 -04:00
Dave Methvin
619a89d5ff
Fix #6593 . Don't trigger change
event twice when simulating it on IE.
2011-09-19 15:42:31 -04:00
Dave Methvin
6872d31f5a
Fix #6170 . Don't try to run DOM methods on window
.
2011-09-19 15:42:31 -04:00
Dave Methvin
38601e07da
Remove the relatedTarget adjustment for mouseenter/leave events, it's an ambiguous case anyway and it is expensive to do.
2011-09-19 15:42:31 -04:00
Dave Methvin
2886249e84
Cosmetic and style cleanups.
2011-09-19 15:42:31 -04:00
Dave Methvin
0ec71ac707
Fix the special event handler for mouseover/out events.
...
And use the /dist version of jquery.js, willya?
2011-09-19 15:42:31 -04:00
Dave Methvin
9aa553aa18
Rework #1486 patch to avoid try/catch
and look for hidden elements by .offsetWidth
. Unit test currently disabled due to Chrome bug.
2011-09-19 15:42:31 -04:00
Dave Methvin
ecd10464e8
Fix #9951 . Precompute path for .trigger()
to match up with W3C spec.
2011-09-19 15:42:31 -04:00
Dave Methvin
0ccb88d48d
Fix some messy rebasing issues.
2011-09-19 15:42:31 -04:00
Dave Methvin
005958b731
Fixes for IE8. Avoid killer recursion in special events during removal. Use q instead of quote in unit tests.
2011-09-19 15:42:31 -04:00
Dave Methvin
9038aa9586
The unload event no longer needs the IE6SP2 fix, see http://bugs.jquery.com/ticket/8982
2011-09-19 15:42:31 -04:00
Dave Methvin
68d07bf648
Clean up the delegate matching logic.
2011-09-19 15:42:31 -04:00
Dave Methvin
66e9a6f773
Make a blur
event bubble properly when mutated into a focusout
event.
2011-09-19 15:42:31 -04:00
Dave Methvin
8a6bbc70d0
Remove redundancy in the IE special submit handler.
2011-09-19 15:42:31 -04:00
Dave Methvin
bd55f905a0
Fix simulate() arg order.
2011-09-19 15:42:31 -04:00
Dave Methvin
bb1081ee44
Clean up the quick selector expression parsing code.
2011-09-19 15:42:31 -04:00
Dave Methvin
990c094f1c
special.handle now must call the handleObj.handler if it wants that to happen. Also re-use the simulate() function for bubbling focusin.
2011-09-19 15:42:31 -04:00
Dave Methvin
6a670df9e9
Rework the special events interface to add handle and trigger hooks. Modify IE change/submit special events to take advantage of them. Rewrite mouseover/enter code as special events rather than inline code. In the event unit test, set a tabindex on the div element and focus it first to justify a legitimate blur event.
2011-09-19 15:42:31 -04:00
Dave Methvin
df6e0d508e
Rewrite IE special change/submit to make it faster/shorter. Fixes #6319 .
2011-09-19 15:42:31 -04:00
Dave Methvin
0dc7b16e94
Fixes #8858 . Pass the .trigger(..., data) to the event.special._default method.
2011-09-19 15:42:31 -04:00
Dave Methvin
d74c6bd0f4
Add unit tests for quickIs cases and fix the regexp as a result.
2011-09-19 15:42:31 -04:00
Dave Methvin
03f99ff995
Pre-compute delegated event path and handlers to comply with http://www.w3.org/TR/DOM-Level-3-Events/#event-flow
2011-09-19 15:42:30 -04:00
Dave Methvin
5d6a1424aa
jQuery 1.7 event work:
...
Add .on() and .off() methods.
Write existing methods in terms of on/off.
Rewrite delegated handling to remove "live" event.
Fix existing code for jQuery style guide.
Fix existing bug in unit tests calling .undelegate()
2011-09-19 15:42:30 -04:00
Dave Methvin
81c778b2ca
Fix #10208 . Check for button
as well as input
when performing the #7071 VML crash workaround for IE special-events submit code.
2011-09-07 11:30:22 -04:00
Steen Nielsen
2d275dfd05
Make sure that Internet Explorer 6-8 won't give a "failed" error, when a request for type is made on vml objects
2011-07-15 22:21:44 +02:00
rwldrn
6926247bf4
Landing pull request 397. withinElement rewrite in event. Fixes #6234 , #9357 , #9447 .
...
More Details:
- https://github.com/jquery/jquery/pull/397
- http://bugs.jquery.com/ticket/6234
- http://bugs.jquery.com/ticket/9357
- http://bugs.jquery.com/ticket/9447
2011-06-14 15:38:46 -04:00
rwldrn
c3c001cf5b
Landing pull request 404. Removes unused hasOwn var declaration. Fixes #9510 .
...
More Details:
- https://github.com/jquery/jquery/pull/404
- http://bugs.jquery.com/ticket/9510
2011-06-06 20:16:14 -04:00
Rick Waldron
c17f589ec9
Landing pull request 377. Check custom data != null(undefined), allows zero; Fixes #9285 .
...
More Details:
- https://github.com/jquery/jquery/pull/377
- http://bugs.jquery.com/ticket/9285
2011-05-16 10:38:36 -04:00
John Resig
419b5e5e2a
Make sure that mouseenter/mouseleave fire on the correct element when doing delegation. Fixes #9069 .
2011-05-10 11:49:32 -04:00
Rick Waldron
bf678fd9d6
Restores var names to satisfy the crock-machine. Supplements #9008
2011-04-28 22:26:34 -04:00
Rick Waldron
ca367674c1
Restored /g flag to rspaces; Adds unit tests; Supplements #9008
2011-04-28 21:15:45 -04:00
rwldrn
57f56be04f
Make cached rspaces regex definitions consistent. Fixes #9008
2011-04-28 16:06:13 -04:00
Jordan Boesch
02ad0aa3b6
Landing pull request 344. using jQuery.nodeName where applicable.
...
More Details:
- https://github.com/jquery/jquery/pull/344
2011-04-23 17:58:56 -04:00
Dave Methvin
16312c6b06
Merge branch 'master' of github.com:jquery/jquery into fix-8790a-quicker-trigger
2011-04-21 22:15:21 -04:00