Commit Graph

156 Commits

Author SHA1 Message Date
dmethvin
974b5aeab7 Honor stopImmediatePropagation for live/delegate event handlers. Fixes #7217. 2010-10-25 13:05:31 -07:00
rwldrn
3b50eaca2c Fixes #7229 and #5803 2010-10-24 12:18:33 -04:00
jeresig
0564553bf1 Fix the number of change tests and remove textarea tests. 2010-10-14 22:37:56 -04:00
jeresig
2d5f8666ac Use prepend for the focuin test (to avoid making the test suite jump). 2010-10-14 21:40:35 -04:00
Justin Meyer
88068f82c1 Make sure that focusin/focusout bubbles in non-IE browsers. 2010-10-13 10:35:28 -04:00
John Resig
2ef8da0924 Merge branch 'bug7150' of http://github.com/csnover/jquery 2010-10-12 21:51:44 -04:00
John Resig
783bb2a85f Fix some gaps in the handling of event data properties. Thanks to @jitter in ff6ceadbfd for the catches. 2010-10-12 20:56:46 -04:00
Colin Snover
1518ae1aed Fix patch for #7150, which was not deleting the events object properly on plain JS objects. Thanks to jitter for catching it. 2010-10-12 18:49:37 -05:00
Colin Snover
ff6ceadbfd Use a key name less likely to result in collisions for events on plain JS objects. Fixes bug #7150. 2010-10-11 23:35:18 -05:00
John Resig
1df5084c97 Handle some edge cases with binding events to the window object (which is also a plain object - causing some confusion). Fixes #7143. 2010-10-11 18:20:57 -04:00
John Resig
c00a6ff1f1 Add some resize event tests. 2010-10-11 18:03:54 -04:00
Dave Reed
cb811c04b0 Using data() on JavaScript objects sets fields directly on the object. Note that events are now a property of a function (to avoid JSON serialization - and only in the case of JavaScript objects, not DOM nodes). Fixes #6807. 2010-09-29 06:46:25 -07:00
John Resig
49f6f34181 Fix number of expected select tests from commit 879799fe95. Thanks to @jitter for the catch. 2010-09-29 05:41:27 -07:00
Dave Methvin
2c4b20809e Don't have .val() return selected-but-disabled options, or selected options inside a disabled optgroup. Doesn't change the .val() returned for a disabled select. Fixes #3240, adapted from Nathan Hammond's patch there. 2010-09-24 17:26:22 -04:00
Robert Katic
7367b524ec Ensure that selector is not broken. 2010-09-23 12:08:29 -04:00
Robert Katic
dc4c9abc39 Correcting some imperfections in test added in previous commit. 2010-09-23 12:08:15 -04:00
Robert Katic
da5706c974 Added support for map of events in live, die, delegate and undelegate. Fixes #6282. 2010-09-23 12:07:42 -04:00
jeresig
1ba2df02d6 Use custom events for testing unbind instead of the, potentially conflicting, error event. 2010-03-24 15:39:58 -04:00
jeresig
da26d0eb4e Rewrote the live/delegate submit tests to be more generic. 2010-03-09 14:08:33 -05:00
jeresig
f68b46d7ab Make sure that special remove and teardown events get called when .die() is used. Additionally made sure that default actions are triggered when namespaced events are used. Fixes #6202 and #6250. 2010-03-09 12:22:25 -05:00
jeresig
9584e908a2 Added in Ben Alman's proposed event.namespace property (the property holds the namespaces specified in a call to trigger). Additionally fixes namespaces with .live(). Fixes #6208 and #6209. 2010-03-02 17:34:12 -05:00
jeresig
5c111a028a We no longer support globally-triggered events on plain objects. This is a trade-off to having good garbage collection on the objects. 2010-03-02 10:51:31 -05:00
jeresig
a45372a4c5 Adding in .bind(name, false), .unbind(name, false) support - an easy way to just stop bubbling and the default action on an element. Fixes #6188. 2010-02-27 09:02:13 -05:00
jeresig
ba7195e3f9 Make it so that you can pass in event data to .click(), et. al. Fixes #6187. 2010-02-26 20:01:19 -05:00
jeresig
7f5179b654 Make sure that unbinding on a plain javascript object works correctly. Fixes #6184. 2010-02-26 11:32:12 -05:00
jeresig
26b0e913dd Make sure that live events bubble unless explicitly told not to, like a normal event. Fixes #6182. 2010-02-26 09:26:14 -05:00
jeresig
da966573c3 Make sure that elements that have been removed also have their special events cleaned up. Fixes #6084. 2010-02-13 06:10:43 -05:00
jeresig
dd5c26304a Make sure that live focus and blur events also bind to the regular events, to handle triggered events. Fixes #6055. 2010-02-13 05:37:17 -05:00
John Resig
021b809ace Make sure that the teardown is called after all the handlers of a type are removed. Fixes #6065. 2010-02-11 01:42:51 -05:00
jeresig
be2407e233 Rewrote the live event handling to use the new event logic. Also added in support for live namespaced events. Fixes #5945. 2010-02-04 21:36:32 -05:00
jeresig
104757705a Added some more tests for checking the execution order of events (from last night's changes - routes around Chrome's busted object looping abilities). 2010-02-04 09:23:50 -05:00
Justin Meyer
e177465a6b Forgot to land Justin's tests for the event fixes. 2010-02-04 00:49:46 -05:00
jeresig
e7912805d6 A large refactor of the event handling logic. Data and namespace information is maintained in a separate object now, no longer on the event handler. Proxy functions are no longer needed, as a result. Additionally execution order of the handlers is maintained, fixing #4261, and the execution of handlers is maintained even while they're being removed. Live events will be refactored separately. 2010-02-04 00:20:52 -05:00
jeresig
31432e048f Add .delegate() and .undelegate(). An alternative to using .live() which goes from a single root and filters by the specified selectors. Should be used like do: .delegate(td, hover, someFn);. Fixes #6005. 2010-02-01 18:06:03 -05:00
jeresig
0252b78201 Provide a way to simulate default browser actions. Fixes #5973. 2010-01-28 14:34:09 -05:00
jeresig
390186b902 Make sure that special.add actually copies over event namespaces and data. Fixes #5779 and #5834. 2010-01-25 17:01:07 -05:00
jeresig
0474917c9d Make sure multiple bound events have their namespaces and data maintained. Fixes #3549. 2010-01-25 16:45:39 -05:00
jeresig
d24443fb55 Make sure that it's possible to preventDefault natively-triggered (submit, focus, blur, click) events. Fixes #5695. 2010-01-25 13:45:07 -05:00
jeresig
3e286440d5 Make sure that .die() with no args works. Fixes #5789. 2010-01-23 16:37:12 -05:00
Irae Brasil
01f72026ec Added support for multiple live event handlers, live hover, and live focus/blur (mapped to focusin/focusout). Fixes #5804, #5801, #5852. 2010-01-23 11:56:24 -05:00
Irae Brasil
150e44cdda Make sure non-left-click events don't bubble. Fixes #3861. 2010-01-23 11:12:26 -05:00
jeresig
366039a6f0 Revert "Adding in backwards-compatiblity support for jQuery().bind/unbind/trigger - and immediately deprecating it. Please explicitly use jQuery(document) in your code."
This reverts commit e9d5947b4a.
2010-01-11 13:48:40 -05:00
jeresig
e9d5947b4a Adding in backwards-compatiblity support for jQuery().bind/unbind/trigger - and immediately deprecating it. Please explicitly use jQuery(document) in your code. 2010-01-06 11:32:29 -05:00
jeresig
66975de2d2 Remove the .bind(name, fn, thisObject) and promote jQuery.event.proxy() to jQuery.proxy() as alternative to handling scoping on callbacks. Fixes #5736. 2009-12-31 00:37:23 -05:00
Alexander Farkas
5dc6b7ce34 Used the patch from Alexander as the basis for a rewrite of the IE change event logic. Now has full parity with the regular change event in other browsers: Works with regular bind, works better with multiple selects, works as a regular change event (note test suite changes), works with readonly/disabled inputs, and much more. The original patch had a number of problems, including firing the change event too many times, not bubblinb properly, and not handling clicks on multi-selects properly - that should all be fixed now. Thanks Alexander for the patch pushing in the right direction. 2009-12-21 15:32:32 -05:00
John Resig
1052792bb2 Fixed problems with removing live events. Fixes #4894. 2009-12-09 14:43:53 -08:00
Justin Meyer
d42afd0f65 Adding in support for bubbling submit and change events, thanks to the patch by Justin Meyer. Includes a delegation test suite for manually testing to see if the events work as intended. 2009-12-04 11:28:50 -05:00
jeresig
21dead4691 Simplified a selector in the .live() tests. 2009-11-30 14:02:03 -05:00
jeresig
6e5a6a26a7 Tweaked the live test to be a bit simpler. 2009-11-30 13:50:25 -05:00
Robert Katic
04dbdb7525 Corrected RegExp to match event namespaces. Fixes #5303. 2009-11-26 00:58:39 +08:00
Mr Speaker
5cb1163469 Making sure that you can bind multiple toggles to a single element without problems. Thanks to 'Mr Speaker' for the original patch. Fixes #5274. 2009-11-11 09:46:24 -05:00
Yehuda Katz
45dfa3b0fc Probably not the optimal solution, but tests pass. 2009-09-16 08:33:00 +00:00
Ariel Flesler
9ebb2fc654 jquery event: closes #5250. bind(), unbind() and one() support Object Literals (needs some refactor though) 2009-09-16 02:19:18 +00:00
Ariel Flesler
8356871a55 testrunner: focus & blur events could fail if the window isn't focused 2009-09-15 17:11:15 +00:00
Ariel Flesler
5e0da8c036 testrunner: resetting the scroll position after focusing a field 2009-09-14 23:28:21 +00:00
Ariel Flesler
bca8225413 jquery event: fixes #4989. blur and focus events now bubble and can be handled using live(). 2009-09-14 22:04:22 +00:00
Brandon Aaron
ee34b6982a fix for #3533, triggering an event with a colon in the name on a table no longer throws an error in IE 2009-06-17 02:31:45 +00:00
Brandon Aaron
811891785f .bind() now accepts an optional thisObject as the last argument which is used to change the value of this in event callbacks. fixes #3699 2009-05-07 00:50:28 +00:00
Brandon Aaron
8f042d8be3 fix for #4234. hover can take one function to use for both enter and leave. 2009-05-06 02:17:24 +00:00
Brandon Aaron
4460d5ad59 unit tests for using jQuery events on non-dom elements. fixes #3439. thanks morgan 2009-05-04 04:54:09 +00:00
Brandon Aaron
aef1989ba7 live event handlers now receive data from trigger, fixes #4532, thanks nbubna 2009-04-30 21:50:15 +00:00
Brandon Aaron
71efbdd3b2 refactor specialAll into add and remove hooks for existing special events, live now accepts optional data param like bind, fixes #4612 and #4613, thanks to Mike Helgeson 2009-04-30 21:44:25 +00:00
Brandon Aaron
45b8d2531e enable test for binding events cross-frame that was fixed in r6316 2009-04-29 22:04:41 +00:00
Brandon Aaron
851846aabe .unbind() without any arguments now also unbinds namespaced events. fixes #4609 and #4241 2009-04-29 21:45:58 +00:00
Brandon Aaron
30e760b63f fix for #4189, live/die now work with contexts other than just document 2009-03-20 03:10:07 +00:00
Ariel Flesler
48164ee603 jquery event: Fixing event.currentTarget for live(). 2009-02-23 13:27:48 +00:00
John Resig
8d9aa015c1 Changed the currentTarget test - no need to test the native event triggering for this test. 2009-02-17 17:22:59 +00:00
Ariel Flesler
63f8bb7027 testrunner: Misc 2009-02-17 12:42:46 +00:00
Ariel Flesler
0a1b0db347 jquery event: closes #4033. e.currentTarget wasn't being enforced for native events (IE doesn't have it) 2009-02-17 12:38:16 +00:00
John Resig
9aa0c69c43 Fixed bubbling of live events (if an inner element handles an event first - and stops progatation - then the parent event doesn't encounter the event). Thanks to Irae for the patch. Fixes bug #3980. 2009-02-09 23:29:57 +00:00
John Resig
a78557472c Focused support of .live(). stopPropagation and stopImmediatePropagation are not supported - and do not do what the use would expect. 2009-01-20 17:25:37 +00:00
John Resig
b1018cad12 Landed a fix for when a DOM element gets accidentally removed by another live event handler. Thanks to Irae for the patches. Fixed #3820. 2009-01-10 19:57:07 +00:00
John Resig
ec7baf230d Didn't get specific enough with the proxy guid, fixes #3787. 2009-01-09 22:14:48 +00:00
John Resig
d12e8a34e6 Made it so that you can bind a single function to multiple .live() selectors. Additionally, simplified the proxy code to provide a default proxy function.
Fixes #3787.
2009-01-09 22:10:42 +00:00
Ariel Flesler
eced38a30d testrunner: refactored unbind's tests. Including one for #3538, passing since last commit. 2009-01-08 22:22:33 +00:00
John Resig
b1e161466c Disabled an extra event binding. 2009-01-05 23:06:57 +00:00
Ariel Flesler
989e3f61f7 jquery event: closes #3772. The extra function on $.event.trigger isn't supported anymore. 2009-01-02 22:23:52 +00:00
Ariel Flesler
c0446c70d5 jquery event:
* event objects have isDefaultPrevented, isPropagationStopped and isImmediatePropagationStopped methods.
* Removed donative and dohandlers from $.trigger
* event.result carries the last returned data from a handler(not undefined).
* $.trigger doesn't keep bubbling if stopPropagation() is called.
* Same event object is used all along for global trigger
* Fixed the bug where target doesn't change when triggering on many elements.
* The data array on $.trigger was accumulating objects as it bubbles.
testrunner: adding more tests
2008-12-31 02:58:13 +00:00
John Resig
4f7441910f Made sure that return false works in .live() along with the event object being passed in as the first argument. 2008-12-30 20:45:33 +00:00
Ariel Flesler
4f99e793fa jquery event: jQuery.Event can be instantiated without the 'new' keyword. 2008-12-29 21:57:29 +00:00
Ariel Flesler
4ca4ce52f7 jquery event: Closes #3662. Adds a jQuery.Event class. Makes trigger and fix simpler. Adds currentTarget attribute to event objects. Event object isn't passed as part of data. 2008-12-25 21:44:54 +00:00
John Resig
c03a280155 Added a new liveQuery/event delegation hybrid method: .live and .die. Easily adapts event delegation to the jQuery style. $("div").live("click", fn); $("div > #foo").live("submit", fn); $("div").die("click"); 2008-12-22 04:59:34 +00:00
John Resig
67ded9a36a Made sure that the correct event.taget is being used in event bubbling. 2008-12-22 02:02:05 +00:00
John Resig
25885e07b2 Added support for bubbling triggered events. 2008-12-22 01:57:06 +00:00
John Resig
77344f4c50 Added support for multiple-namespaced events (in bind, trigger, and unbind). 2008-12-19 04:34:12 +00:00
Jörn Zaefferer
12bb969411 core: tests cleanup for compability with qunit updates: stop() now actually accepts an argument (ajax.js); selectors should be confined to fixture(event.js) 2008-10-24 14:40:58 +00:00
Ariel Flesler
b860c30b82 test runner: Commented 2 tests that jam the suite. 2008-10-21 01:48:23 +00:00
Ariel Flesler
9e48649729 test runner: the changes are:
- Replaced all the $ for jQuery in the tests and suite.
- Added a noConflict to testrunner.js.
- Modified the test for noConflict() so that it still work.
- Added jQuery 1.2.1 and 1.2.3 to otherlibs.
2008-05-28 23:18:25 +00:00
Ariel Flesler
407c5eb430 test runner: extra test case, [5501] 2008-05-08 16:25:12 +00:00
Ariel Flesler
ba48be3ada test runner: translated all the ok() with '==' to equals(), as it gives more information on failures. 2008-05-06 18:56:02 +00:00
Ariel Flesler
d822c0c214 test runner: adding a test case for $.fn._toggle with more than 2 functions. 2008-04-29 22:20:02 +00:00
Jörn Zaefferer
32b1cb3a5c jquery.event: Patch for #2708 2008-04-22 21:59:40 +00:00
Brandon Aaron
5d033dba02 Trigger onclick handlers of links 2008-04-21 20:39:17 +00:00
John Resig
703e89ba30 Added support for .unbind(".test") to unbind all namespaced events on an element. 2008-02-03 04:33:11 +00:00
Jörn Zaefferer
2fa855601e fix for #2114; refactored tests for bind() to highlight failing select-change-test 2008-01-14 09:33:08 +00:00
John Resig
3261544c38 Fixed #2027 - make sure that cloned elements (within appendTo, etc.) have their events cloned by default. 2007-12-20 13:36:56 +00:00
David Serduke
b740fe5632 Fixed a problem in the unit tests for IE where an optimization made the test case not work. The optimization was fine. It was the unit test that was taking a short cut which caused it to fail after the optimization went in. 2007-12-20 07:39:35 +00:00
Jörn Zaefferer
70ae356e4e Test for #2069 2007-12-17 17:39:50 +00:00
Brandon Aaron
b264f789b9 new special events api, ready is now a first class event that you can use bind, unbind or the ready helper, two new events: mouseenter and mouseleave, the hover helper method now uses mouseenter and mouseleave, bind and unbind can now take a space sperated list of event types 2007-12-15 05:55:33 +00:00
Brandon Aaron
91f1299f68 Fix for #1486. Prevent IE from throwing an error when triggering focus on hidden input. 2007-12-08 02:54:09 +00:00