Commit Graph

442 Commits

Author SHA1 Message Date
Dave Methvin
633ca9c161 Fix #11076. If .clone() won't delegate, we must remediate.
Since `jQuery.event.add` can accept a handleObj there's no need to reiterate them as args, but we *do* need to set the `selector` variable correctly.
2012-01-28 16:30:35 -05:00
Mike Sherov
135bb4ff81 Add undef:true to JSHint now that it understands hoisting
also add smarttabs:true and fix some smarttabs spacing issues
2012-01-19 22:36:08 -05:00
Dave Methvin
8d9025ca50 Fix #8165: Ignore events bubbling through disabled elements.
Although #6911 fixed the case where event.target was disabled, it missed the case where the target was a sub-element.
2012-01-19 22:14:24 -05:00
Rick Waldron
c0da49ff37 Fix #11130: Don't neglect the data arg when event-map is passed. 2012-01-12 20:30:45 -05:00
Richard Gibson
77de76b942 Fix #11145: Harden dispatch against a form-aliased "disabled" property 2012-01-11 21:56:18 -05:00
Dave Methvin
4534db196b Fix #11021. There should be no mangling of the "hover" namespace. 2011-12-13 22:29:35 -05:00
Dave Methvin
5798eab124 Fix #10961. XRegExp's shimmed .exec() can't handle undefined.
There's no reason to call quickParse if selector is falsy, so it's a minor performance optimization anyway. No change in behavior at all on our side, so no test case needed.
2011-12-13 21:57:48 -05:00
Dave Methvin
c584ce4f56 Fix #10984. Use origType when unbinding via the event object. 2011-12-13 21:40:59 -05:00
Mike Sherov
98386cfd77 Fix #10692. JSLint is dead! Long live JSHint!
Still needs this sizzle PR: https://github.com/jquery/sizzle/pull/82
2011-12-08 21:04:57 -05:00
Rick Waldron
64df670a81 Remove unnec .call( this... from one: function() {}. Fixes #10819 2011-12-06 16:27:38 -05:00
Dave Methvin
8cb065addc Fix #10844. Harden quickIs() against form-aliasing of the id property. 2011-11-21 11:33:21 -05:00
Dave Methvin
780c59b89d Fix #10791. SVG clamors for special treatment of its class names. 2011-11-16 10:35:53 -05:00
Dave Methvin
80797f5805 Fix #10798. Don't re-bubble trigger()ed events in IE.
Since .trigger() already bubbles the event, we don't have to work around the non-bubbling IE events for that case.
2011-11-15 21:06:53 -05:00
Dave Methvin
ca8fc725ac Allow mapped types to be removed by a namespace-only type name. 2011-11-15 11:38:55 -05:00
Dave Methvin
6736dd7168 Fix #10794. .triggerHandler() should not .preventDefault().
This also provides a resolution for #10699.
2011-11-15 10:23:24 -05:00
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