John Resig
6e3b596514
Allow function to be passed in as a data object to bind and one. Fixes #6993 .
2011-04-16 17:37:35 -07:00
timmywil
149a040794
Fix test suite fail in IE6/7 on event:undelegate - was failing an if where it shouldn't
2011-04-13 23:14:14 -04:00
Dave Methvin
bebd8bc01e
Followup to #8753 . Modify new Event constructor signature to jQuery.event(type, props), which can be exploited by jQuery.event.trigger as well.
2011-04-12 19:29:09 -04:00
Dave Methvin
6d49e84daf
Merge branch 'fix-8790-quick-trigger'
...
Conflicts:
src/event.js
2011-04-12 18:46:21 -04:00
Dave Methvin
9e71ad1b12
Explicitly set event.type in case we chopped out a namespace or exclusive flag.
2011-04-12 18:32:23 -04:00
Dave Methvin
352715bd08
Use explicit "new jQuery.Event" to avoid double-function-call overhead.
2011-04-12 17:46:15 -04:00
John Firebaugh
0d8b247cab
Accessing the 'type' property on VML elements fails on IE. Fixes #7071 .
2011-04-12 16:48:22 -04:00
John Resig
978c065555
Merge branch 'Sub_Naming' of https://github.com/timmywil/jquery into timmywil-Sub_Naming
...
Conflicts:
src/core.js
src/css.js
src/event.js
2011-04-12 16:05:40 -04:00
John Resig
e7787cd098
More formatting tweaks.
2011-04-12 15:54:30 -04:00
John Resig
34adda3c88
Fixing some minor formatting problems.
2011-04-12 14:58:55 -04:00
John Resig
b05d631b30
Merge branch 'fix-8790-quick-trigger' of https://github.com/dmethvin/jquery into dmethvin-fix-8790-quick-trigger
2011-04-12 14:57:30 -04:00
jeresig
7bfb6a7dd3
Removing un-needed frameElement check as discussed in #8018 . Fixes #8108 .
2011-04-12 00:29:52 -04:00
Dave Methvin
7fa6de0ec1
Merge branch 'master' of github.com:jquery/jquery into fix-8790-quick-trigger
2011-04-11 13:25:57 -04:00
Dave Methvin
a5071d49ba
Shave some time off array setup in trigger/handle
2011-04-11 13:19:00 -04:00
jeresig
094c48e0c5
Merge branch '8777' of https://github.com/rwldrn/jquery into rwldrn-8777
...
Conflicts:
src/event.js
2011-04-11 12:13:04 -04:00
Dave Methvin
7957516671
Merge branch 'master' of github.com:jquery/jquery into fix-8790-quick-trigger
...
Conflicts:
src/event.js
2011-04-11 11:44:26 -04:00
Rick Waldon
868e1e28ce
Ticket #8753 Always set event type explicitly
2011-04-11 11:32:23 -04:00
Dave Methvin
530c915553
Move initialization of event until we determine if anyone wants it.
2011-04-11 11:15:00 -04:00
Dave Methvin
bb52010442
Merge branch 'master' of github.com:jquery/jquery into fix-8790-quick-trigger
2011-04-10 17:40:31 -04:00
jeresig
14ecd9a992
Merge branch 'proxy-native-bind' of https://github.com/gf3/jquery into gf3-proxy-native-bind
2011-04-10 16:51:22 -04:00
jeresig
2c74ee46ee
Merge branch 'eventprops.1.6final' of https://github.com/rwldrn/jquery into rwldrn-eventprops.1.6final
...
Conflicts:
test/unit/event.js
2011-04-10 16:28:15 -04:00
Dave Methvin
98d83ef85f
Fixes #8722 . Remove try/catch used by #3533 to fix the IE Table Colon Blow bug, and instead check for colon in the event name. Thanks to daguej for scoping this out -- a colonoscopy you might say.
2011-04-07 22:52:15 -04:00
Dave Methvin
2f11ba7c98
Allow specific custom events to exit trigger early if there are no handlers bound for that type.
2011-04-06 23:41:47 -04:00
Dave Methvin
bbd9c776ea
Fix #8732 . Change feature detect for focusin event support, so IE9 won't have duplicate events.
2011-04-06 23:06:52 -04:00
Dave Methvin
b7dd8404c5
Fixes #8712 . Bubble custom events to the window when they are triggered. Ride that, Cowboy!
2011-04-06 22:11:58 -04:00
Dave Methvin
879be3d812
Fix some spacing and comment issues that crept in with the rebase.
2011-04-06 11:34:41 -04:00
Dave Methvin
29386db319
Sadly, we still have to bubble the event so inline handlers will work.
2011-04-06 10:57:09 -04:00
Dave Methvin
246757bacd
Only bubble a triggered event if we have attached a jQuery handler, but check the current element for an inline handler regardless. Make some other size optimizations as well.
2011-04-06 10:57:07 -04:00
Dave Methvin
bfa32317d2
Switch from recursion to iteration for event triggering. Move event-name namespace processing out of event handler, since it has to always go through trigger.
2011-04-06 10:50:31 -04:00
Dave Methvin
c1316a4cb1
Shorten up the code and do event cleanup on test cases.
2011-04-05 21:59:09 -04:00
Dave Methvin
b5c7c507c1
Merge branch 'ticket_7883' of https://github.com/rwldrn/jquery into rwldrn-ticket_7883
2011-04-05 21:42:58 -04:00
rwldrn
4b0c26f0af
Ticket #8777 undelegate by namespace
2011-04-05 18:55:07 -04:00
rwldrn
92a4d59c32
Remove this.type assignment
2011-04-05 16:32:42 -04:00
rwldrn
b1b2e83394
Move this.type setting to after prop set; avoid setting twice
2011-04-05 16:20:55 -04:00
rwldrn
23a411b6bc
Ticket #8753 Allow special properties to explicitly defined on jQuery.Event objects
2011-04-05 15:55:40 -04:00
jeresig
7705c35b14
Merge branch 'fix-8456-lost-mouseenter' of https://github.com/dmethvin/jquery into dmethvin-fix-8456-lost-mouseenter
2011-03-21 10:53:57 -04:00
Dave Methvin
2ac4067a63
Fixes #8456 . Make sure parent is not null before crawling into its lap, so mouseenter is triggered on a mouseover event.
2011-03-09 22:38:26 -05:00
Dave Methvin
55ec6a71d2
Fixes #7340 . Use a single capturing handler to simulate bubbling focusin/focusout event on non-IE browsers. Allow native DOM methods to fire events other than the currently active one back into jQuery.
2011-03-04 21:16:40 -05:00
Dan Heberden
47abe5e1da
Bug #6911 - Prevent action on disabled elements, both triggering and bound via .live()
2011-02-18 10:09:07 -08:00
Alex Sexton
752db8fffe
A temporary workaround for #8018 that avoids any chance of compatibility-breaking changes until a proper fix can be landed in 1.6.
2011-02-17 18:01:30 -06:00
Anton M
6b08d88d04
Fix some whitespace issues.
2011-02-15 22:09:09 +01:00
Dave Methvin
12c0e1a692
Fixes #7922 . Copy the donor event when simulating a bubbling submit in IE so that we don't accidentally stop propagation on it. Remove a bunch of return statements that could also cancel the event. DRY out the liveFired change from #6359 by moving it to the trigger() function.
2011-02-15 22:08:39 +01:00
Anton M
b46dff39c3
Make sure that mousing over Chrome "internal div" doesn't trigger a mouseleave. Fixes #8209 .
...
Follow up to 4a828c93d4
which was stupid and got reversed.
2011-02-08 17:15:55 +01:00
Anton M
944e0e6498
Revert "Make sure that mousing over Chrome "internal div" elements results in no trigger of a mouseleave."
...
This reverts commit 4a828c93d4
.
2011-02-08 17:08:25 +01:00
Anton M
4a828c93d4
Make sure that mousing over Chrome "internal div" elements results in no trigger of a mouseleave. Fixes #8209 .
2011-02-08 16:57:06 +01:00
Colin Snover
7acb141ed7
Update $.data to use a function instead of an object when attaching to JS objects in order to hide attached metadata from JSON.stringify. Remove event.js code that was doing this before specifically for events, which is now redundant. Fixes #8108 . 1.5-stable
2011-02-07 10:48:38 -06:00
Timmy Willison
82626799ca
Changed $.sub internals to match sub naming, added some more spacing in some areas for readability
2011-02-06 19:34:57 -05:00
Gianni Chiappetta
a03f040dbf
Merge branch 'master' into proxy-native-bind
...
* master: (194 commits)
Revert "Make sure that focusin/focusout bubbles in non-IE browsers." This was causing problems with the focusin event, see: #7340 .
Replaces "text in-between" technique with a full-fledged one-level transitive search for converters (unit tests added). Also cleans up auto dataType determination and adds converter checks in order to guess the best dataType possible.
Moves determineResponse logic into main ajax callback. Puts responseXXX fields definitions into ajaxSettings.
Removes misleading comment.
Bring jQuery('#id') and jQuery('body') logic back into core (while leaving it in Sizzle at the same time). Was causing too much of a performance hit to leave it all to Sizzle.
Renames Deferred's fire and fireReject methods as resolveWith and rejectWith respectively.
Fix typo in regex tweak from previous commit.
Renames determineDataType as determineResponse. Makes it more generic as a first step into integrating the logic into the main ajax done callback. Also fixes some comments in ajax/xhr.js.
Move jQuery(...) selector speed-up logic into Sizzle(...) qSA handling. Additionally add in a new catch for Sizzle('.class') (avoid using qSA and use getElementsByClassName instead, where applicable).
Revises the way arguments are handled in ajax.
Makes sure statusCode callbacks are ordered in the same way success and error callbacks are. Unit tests added.
Cleans up and simplifies code shared by ajaxPrefilter and ajaxTransport. Removes chainability of ajaxSetup, ajaxPrefilter and ajaxTransport. Also makes sure context is handled properly by ajaxSetup (unit test added).
Rework unit tests to check actual result elements.
Moves active counter test after all other ajax tests where it should be.
Revised the Nokia support fallback. It turns out that Nokia supports the documentElement property but does not define document.compatMode. Adding this third fallback allows Nokia to run jQuery error-free and return proper values for window width and height.
Moves things around to make jsLint happier.
Fixes crossDomain test so that it assumes port to be 80 for http and 443 for https when it is not provided.
Moves determineDataType into ajaxSettings so that it is accessible to transports without the need for a second argument and so that we can now pass the original options to the transport instead. Also ensures the original options are actually propagated to prefilters (they were not).
Re-adds hastily removed variable and simplifies statusCode based callbacks handling.
Use undefined instead of 0 to deference transport for clarity.
...
Conflicts:
src/event.js
2011-01-21 09:58:55 -05:00
jeresig
328a86f9a0
Revert "Make sure that focusin/focusout bubbles in non-IE browsers." This was causing problems with the focusin event, see: #7340 .
...
This reverts commit 88068f82c1
.
Conflicts:
src/event.js
test/unit/event.js
2011-01-21 09:24:09 -05:00
Colin Snover
e78d3a7e2d
Merge in data_nocollide branch. Fixes #6968 , improves unit testing framework checks for leaky stuff.
2011-01-17 15:31:43 -06:00
jeresig
987c44bee4
Merging pull request 183 for #7793 .
2011-01-17 15:45:07 -05:00
Colin Snover
8e59a99e0a
Change the way jQuery.data works so that there is no longer a chance of collision between user data and internal data. Fixes #6968 .
2011-01-09 15:52:33 -06:00
rwldrn
612a908514
#7883 .delegate and .live should accept false as the fn arg, like bind
2011-01-01 13:49:59 -05:00
Colin Snover
429b078dc7
Merge branch 'fix7762' into jquery master. Fixes #7762 .
2010-12-30 00:02:56 -06:00
Dave Methvin
64ee5581af
When a native browser event is bubbling up the DOM, make sure that the correct isDefaultPrevented value is reflected by jQuery's Event object. Fixes #7793 .
2010-12-27 13:30:05 -06:00
Colin Snover
37d297c67f
Clearing event handlers on unload is no longer necessary in any version of IE. This issue causing memory leaks between pages was fixed in MS07-033.
2010-12-26 14:28:49 -06:00
Colin Snover
a939ade9c6
Fix whitespace in event.js
2010-12-26 14:28:13 -06:00
Dave Methvin
c9e8a95709
Simplify the check for isDefaultPrevented.
2010-12-24 09:53:39 -05:00
Dave Methvin
0b6afcedd2
When a native browser event is bubbling up the DOM, make sure that the correct isDefaultPrevented value is reflected by jQuery's Event object. Fixes #7793 .
2010-12-23 19:59:23 -05:00
Gianni Chiappetta
9f8cd6c499
Fixing $.proxy to work like (and use) Function.prototype.bind (ticket #7783 )
...
http://bugs.jquery.com/ticket/7783
2010-12-14 21:53:04 -05:00
John Resig
b00ab56160
Merge branch 't6398' of https://github.com/jitter/jquery into jitter-t6398
2010-12-06 17:19:30 -05:00
danheberden
3e6e3c5eb8
Fix for #6911 - prevent disabled elements in liveHandler
2010-11-21 16:54:56 -08:00
Anton M
89b771daef
Make sure custom events named "submit" can be bound to non DOM elements in IE too. Fixes 6398.
2010-11-21 04:31:04 +01:00
John Resig
fb48ae8e6c
Make sure that when multiple variables are being declared that assignments are each done on their own line.
2010-11-09 11:09:07 -05:00
John Resig
b5b3c73db3
We don't do end of line comments, move them above.
2010-11-09 10:34:32 -05:00
John Resig
7066bb384b
Temporarily backing out commit bd474799bf
.
2010-10-25 20:26:19 -07:00
danheberden
bd474799bf
Prevent IE from firing live/delegate events on disabled elements. ( #6911 )
2010-10-25 14:07:44 -07:00
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
Justin Meyer
f3d610e064
beforedeactivate will fire before focusout - use that to our advantage when working with the change event.
2010-10-13 10:38:29 -04:00
Justin Meyer
88068f82c1
Make sure that focusin/focusout bubbles in non-IE browsers.
2010-10-13 10:35:28 -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
jeresig
884de15fb9
Make sure that the unload event doesn't leak in IE - use jQuery's binding mechanism to make that happen.
2010-10-10 18:01:59 -04:00
jeresig
cbf9d874e5
Change event did not fire in IE when an explicit .focus() was used. Fixes #6374 .
2010-10-09 19:04:15 -04:00
jeresig
79305ed146
Fix the case where live change was breaking if a live click was bound ahead of time. Very similar to #6359 . Fixes #6505 .
2010-10-09 18:16:08 -04:00
David Petersen
60744e8abd
Set event.LiveFired to undefined in specialSubmit handler so that click events bound before the submit won't prevent the submit to fire. Fixes #6359
2010-09-30 13:46:36 -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
ab77451843
Fix mis-type in commit e3c4e57897
. Thanks to @jdalton for the catch.
2010-09-28 20:13:40 -07:00
John Resig
e3c4e57897
Tweak the logic for fixing event.which. Fixes #2338 .
2010-09-28 09:07:57 -07:00
Dave Methvin
adff8e45e2
If an inline handler returns false, call event.preventDefault(). Fixes #6337 .
2010-09-24 18:02:31 -04:00
dmethvin
69994211b0
Don't copy event.originalTarget, it's a Netscape-specific property. Fixes #2814 .
2010-09-24 17:44:48 -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
a7aa86d0b1
Fix missing var. Thanks to @jeff-themovie for the catch.
2010-09-22 16:56:48 -04:00
jeresig
c8dd49f756
Unify the means of detecting a window across the library. Fixes jQuery UI bug #5438 and jQuery bugs #6575 and 6088.
2010-09-22 16:41:51 -04:00
jeresig
9dc6e0c572
Applied the RegExp issues reported by Jeff Robinson here: http://jmrware.com/articles/2010/jqueryregex/jQueryRegexes.html Additionally broke out all remaining inline RegExp. Fixes #7062 .
2010-09-22 09:16:28 -04:00
jeresig
be59693037
No need to set returnValue if preventDefault exists. Thanks kangax for the catch.
2010-09-20 10:16:36 -04:00
jeresig
acb162a697
Make sure that the removeEvent and buildFragment private functions are exposed (to help with access across modules). The final API for each of these is very much in flux and will likely change before the final release. Fixes #7011 .
2010-09-08 18:13:35 -04:00
jeresig
bca5765502
Make sure that jQuery works even when the individual modules are loaded separately AND jQuery.noConflict(true) is used. Fixes #7011 .
2010-09-08 13:54:33 -04:00
John Resig
1533bf7c77
Expose jQuery.uuid (use with caution) and make sure the expando property is used in the events module.
2010-04-24 14:16:27 -07:00
jeresig
8effe3a7de
Made it so that you no longer need to build jQuery in order to run the test suite (but you'll still need a checkout of QUnit and Sizzle, at least).
2010-03-23 12:12:16 -04: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
dcf0fa5048
More changes to get jQuery in line with JSLint.
2010-03-01 21:24:49 -05:00
jeresig
a4043cdcbf
Land some additional tweaks related to running through JSLint.
2010-03-01 18:19:29 -05:00
jeresig
a18f682012
Made some code tweaks related to running jQuery through JSLint (thanks to Lorin Larson for the JSLint run).
2010-03-01 12:44:56 -05:00
jeresig
36faab439a
No reason to double-bind the beforeunload event. Fixes #6113 .
2010-02-27 10:03:43 -05:00
jeresig
42568db4c4
Merge branch 'master' of github.com:jquery/jquery
2010-02-27 09:02:18 -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
brandonaaron
7d5da0ee03
Make sure events exist before trying to access them in jQuery.event.handle and removed unnecessary var statement. Fixes #6163 .
2010-02-27 01:31:33 -06: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
28b489bfc8
Make sure that the correct type is set for live mouseenter/mouseleave events. Fixes #6169 .
2010-02-26 11:23:49 -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
6a82f2ae63
Make sure that mousing over XUL elements results in no trigger of a mouseleave. Fixes #6013 .
2010-02-13 05:45:48 -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
jeresig
467063a2e2
When binding a change directly to a file input just passthrough to the normal bind. A temporary fix for #5997 , needs more investigation.
2010-02-13 04:40:26 -05:00
jeresig
8404ad6070
Make sure that there are some live events before continuing on.
2010-02-12 19:38:57 -05:00
jeresig
5d36fe3210
Make sure that live mouseenter/mouseleave work properly. Fixes #6077 .
2010-02-11 16:50:26 -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
35c379075c
Simplify the special change/submit event removal logic, per Scott's suggestion in 5267824aa3
.
2010-02-10 15:56:53 -05:00
jeresig
5267824aa3
Updated formatting for the change/submit special event logic. Also switched the function declarations to statements. Thanks to Garrett for the recommendation.
2010-02-08 23:28:15 -05:00
jeresig
75bb2d6e51
Fix in logic for handling exclusive namespace testing. Fixes #6048 .
2010-02-08 11:31:01 -05:00
jeresig
43b3ed086d
Update special events to work with the internal event system changes. Also fixes #5967 .
2010-02-05 11:02:56 -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
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
98c7248518
Further optimize the empty/remove/cleanData logic.
2010-01-28 15:25:52 -05:00
jeresig
0252b78201
Provide a way to simulate default browser actions. Fixes #5973 .
2010-01-28 14:34:09 -05:00
jeresig
e9092e9954
Make sure namespaces is always an array, when passed to the remove special. Follow-up to eed69eccc5
.
2010-01-28 14:16:52 -05:00
jeresig
eed69eccc5
Make sure that jQuery.data( elem ) always returns a data object, fixes #5971 . Improve the performance of .bind() and .unbind(), fixes #5972 .
2010-01-28 14:12:44 -05:00
jeresig
942f8f7f75
No reason to limit the initial change data store to just radio elements. Fixes #5851 .
2010-01-27 10:06:50 -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
Matt Curry
f6ec9d54d1
Select (with a selected) fired change on first focus in IE. Fixes #5869 .
2010-01-23 12:52:32 -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
b9ca157998
Make sure that live handlers don't stop inline scripts from executing. Fixes #5835 .
2010-01-23 11:14:29 -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
435772e29b
Adding in the change recommended by Alexander Farkas to fix some bugs in the change delegation logic. Fixes #5851 .
2010-01-18 17:52:36 -05:00
jeresig
257a4693f4
Fix missing var declaration for the length iterator.
2010-01-18 17:19:44 -05:00
John Resig
199a721103
Expose the proxy object on the object, for the benefit of plugin authors (Thanks to Justin Meyer for the suggestion).
2010-01-15 15:41:09 -05:00
John Resig
4397f0fd41
Removed extraneous thisObject references. Thanks to Matt Dunlap for the heads-up.
2010-01-14 01:42:08 -05:00
jeresig
1960f28c0b
Make sure no exception is thrown if no event handler is found (which is the case for applets, objects, and embeds).
2010-01-13 11:24:54 -05:00
jeresig
8e53f7b5d6
Fixed typo in logic, also disabled function setters in this case to allow the functions to passthrough and bind.
2010-01-12 21:54:06 -05:00
jeresig
1d8b3a9af2
Make sure that the focusin and focusout easy-bind methods are exposed.
2010-01-12 17:03:34 -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
5a0ac24e35
Make sure that submit event is still bound for regular form submit events. Thanks to Mark Gibson for the fix suggestion.
2010-01-11 12:26:28 -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
230614b4df
Merging in jQuery.proxy() branch.
2010-01-05 19:18:39 -05:00
jeresig
8db0dd2c64
Added in a holdover jQuery.event.guid for back-compat (two plugins use it: mousewheel and a datepicker). Plugin authors should work to stop using jQuery.event.guid and jQuery.event.proxy ASAP.
2010-01-05 19:17:28 -05:00
jeresig
a5dbca4a06
Moved jQuery.proxy() into core.
2009-12-31 15:06:45 -05:00
jeresig
40ce7f9830
Merge branch 'bug-5735'
2009-12-31 14:49:01 -05:00
jeresig
6cb2945837
Rather than declaring empty anonymous functions all around, introduce and use a single empty function. Thanks to Matt Kruse for the suggestion.
2009-12-31 09:50:49 -05:00
jeresig
ea5d514008
When .bind('unload') was called it accidentally went recursive, from 1bac61655b
. Fixes #5688 .
2009-12-31 00:49:53 -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
jeresig
7e69fdbad4
Fixed spelling mistake noted in dc6b7ce3469eaadb37a151d449e8d36571d1894.
2009-12-21 20:19:49 -05:00
jeresig
3776cbe314
Standardize on using double-quotes for string literals.
2009-12-21 20:13:16 -05:00
jeresig
61e37d4149
Made a number of spacing changes to bring the code more-inline with the jQuery Core Style Guideline.
2009-12-21 19:58:13 -05:00
jeresig
36c99dc0c7
Tweaked the syntax of withinElement a bit.
2009-12-21 18:06:23 -05:00
jeresig
e083d15fc7
Tweaked a couple cases where == was used instead of ===.
2009-12-21 18:02:02 -05:00
Alexander Farkas
209751fcbd
Make sure that the beforeactivate event isn't accidentally prevented.
2009-12-21 16:24:03 -05:00
Jörn Zaefferer
03481a52c7
Stop trying to emulate the focus/blur event in IE, doesn't work as one might expect, anyway. Instead, implement the focusin/focusout events in all other browsers - which creates a much better parity across all browsers. Uses event capturing instead of bubbling to make it happen. Thanks to Alexander for the recommendation and to Joern Zaefferer for the original focus/blur delegation code.
2009-12-21 16:10:21 -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
jeresig
1feb92afb4
Make sure that we don't bind the onunload event in Opera.
2009-12-18 22:35:02 -05:00
jeresig
42f8c3add3
No need to use the conditional comment for binding the onunload event in IE.
2009-12-18 20:29:22 -05:00
jeresig
9997620420
Retooled the arguments.callee-related changes in 98ce35d52b
to avoid re-declarations where possible.
2009-12-16 16:45:00 -05:00
jeresig
fe9333cc79
No need to use jQuery's event system for binding the onunload event in IE.
2009-12-16 15:42:03 -05:00
John Resig
253e73af51
Fixed typo from commit 542099a278
.
2009-12-11 12:49:22 -08:00
Karl Swedberg
1bac61655b
combined jQuery.bind() and jQuery.one() to make them more DRY
2009-12-10 14:44:30 -08:00
John Resig
f25eedf32a
Restrict the attr quick setters to only methods that specifically ask for the functionality. Fixes #5612 .
2009-12-09 21:28:33 -08:00
John Resig
b846ad4ca0
Add a try/catch to handle the exception thrown by unloaded iframes in IE. Fixes #4280 .
2009-12-09 16:00:59 -08:00
John Resig
3ec2f1aef6
Make sure that we don't try to trigger non-existant native events on applets, embed, objects, etc. as it'll cause an exception with Java applets. Fixes #2414 .
2009-12-09 14:49:31 -08:00
John Resig
1052792bb2
Fixed problems with removing live events. Fixes #4894 .
2009-12-09 14:43:53 -08:00
John Resig
86bbf9cf87
We have to access the native event handlers/triggers directly, otherwise they won't execute in most modern browsers. Fixes #5124 .
2009-12-09 13:53:07 -08:00
John Resig
98ce35d52b
Removed uses of arguments.callee from jQuery.
2009-12-07 16:42:25 -08:00
John Resig
00a0abb751
Moved .ready() to core.js from event.js.
2009-12-07 16:34:55 -08:00
John Resig
97323d192f
Oops, missed a closing } from 7d36ccfa8e
.
2009-12-07 07:38:16 -08:00
John Resig
7d36ccfa8e
Broke out the logic for the bubbling change/submit events so that they aren't bound if they aren't used.
2009-12-06 18:20:08 -08:00
John Resig
542099a278
Make sure that we're doing proper focus bubble testing. Also simplified the logic for the IE focusin/focusout handling.
2009-12-06 18:02:58 -08:00
John Resig
aea5b09195
Adding in cross-browser onbeforeunload support. Fixes #4106 .
2009-12-06 16:55:08 -08:00
lrbabe
2d27e053a0
Fix inverted 'orig' and 'fix' event in mouseenter/mouseleave special events.
2009-12-06 09:13:57 +08:00
Karl Swedberg
3afc6533e2
added semicolons to end of 2 statements (and fixed a misspelled word in comment)
2009-12-06 08:55:54 +08:00
John Resig
8d1efee316
Retooled the native triggering code, simplifying it.
2009-12-04 23:18:05 -05: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
c3b2aa9928
Landed the rest of the liveHandler rewrite that takes advantage of the new closest multi-selector signature (sorry, accidentally committed some of it in the wrong commit: 4daae7a79f
).
2009-12-03 11:15:26 -05:00
jeresig
4daae7a79f
No need to do the closest match if no selectors are passed in.
2009-12-03 10:51:04 -05:00
Karl Swedberg
ddb86f8d5b
added curly braces around all if/else statements
2009-11-28 04:09:14 +08:00
Robert Katic
0bb3998a6a
Re-adding zeros removed from slice calls in last commit.
2009-11-26 00:58:39 +08:00
Robert Katic
04dbdb7525
Corrected RegExp to match event namespaces. Fixes #5303 .
2009-11-26 00:58:39 +08:00
Andrea Giammarchi
3a23a5c17d
Changed the === undefined ready event check to == null since frameElement is usually null and was skipping the normal line of checks.
2009-11-17 10:45:01 -05:00
Rich Dougherty
bf71575bb4
Land Rich's fix for not using window.top to do frame detection. Fixes #4787 .
2009-11-11 13:56:39 -05: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
John Resig
262fcf7b7b
Require that, at least, document.body exists before firing the ready event. This may stop jQuery from working on pages that don't create a document.body (such as Safari, when no body exists) but considering that we've required a document.body since 1.3 and haven't broken any pages, this doesn't appear to be a pressing issue. Used the test case written by dmethvin to verify the bug and the fix. Fixes #4320 .
2009-11-09 13:47:53 +01:00
John Resig
24e18d4cae
Backing out commit 81bfd9b870
, read the ticket incorrectly - and seeing some of the other earlier tickets it's obvious that a more generic solution is needed. Thanks jdalton for the catch.
2009-11-09 13:30:33 +01:00
John Resig
4fd730dca7
Merge branch 'master' of git@github.com:jquery/jquery
2009-11-09 13:01:10 +01:00
lrbabe
d251809912
Making mouseenter and mouseleave work with .live().
2009-11-09 12:59:54 +01:00
lrbabe
9a69b2cf08
Cleanup bubbling focus and blur events
...
- Use cached event instead of jQuery.event
- Do not cache event.special if you use it only once
2009-11-09 19:41:43 +08:00
rkatic
3dc5bc5a8b
Make liveHandler to use jQuery.lastCloser and speed up internal sorting.
2009-11-08 00:37:05 +08:00
John Resig
81bfd9b870
Make sure that document.body exists, at least, in IE before the ready event is fired. Fixes #5443 .
2009-11-07 16:00:43 +01:00
visionmedia
50cf4351a6
Consistant splits using " " instead of ","
...
This was used in several other areas, and IMO is easier to read
and since nothing is multi-word then we misewell use " "
2009-10-27 08:40:59 +08:00
John Resig
4b5a680f77
Fixed == change in ready.
2009-10-08 18:13:07 +00: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
681f4fd3cd
jquery event: misc removal
2009-09-14 22:58:20 +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
f3474c00cd
fix for #5198 , event memory leak limited to IE only via conditional compilation
2009-09-14 21:14:15 +00:00
John Resig
0a6c5205d2
Make sure that at least one argument is provided to .slice(), in accordance with the spec. Fixes jQuery bug #4942 .
2009-07-23 13:22:55 +00:00
John Resig
6fc57be843
Support dynamically loaded copies of jQuery using document ready. Fixes #4889 .
2009-07-22 15:03:23 +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
b763cc6602
fix regression in removing live events caused by r6324
2009-05-12 15:43:51 +00:00
Ariel Flesler
d075072768
jquery event: misc change
2009-05-10 14:38:35 +00:00
Brandon Aaron
09b59038a0
unused, left-over code from r6344
2009-05-07 18:09:17 +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
3a9c827bf8
fix for #3286
2009-05-06 01:24:22 +00:00
Brandon Aaron
cbda6c541b
fix global event triggering that i broke in r6323
2009-05-01 00:59:27 +00:00
Brandon Aaron
96fd5f18d4
special event refactor left over code
2009-05-01 00:36:21 +00:00
Brandon Aaron
c6db93c373
fix for #2620
2009-05-01 00:21:29 +00:00
Brandon Aaron
a4b8fed8ad
only copy guid from handler to modifiedHandler if it does not already have one
2009-05-01 00:02:51 +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
287ecdbf67
event clean up
2009-04-30 01:26:09 +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
f5690995dd
fix for #4268 . bind now works with iframe windows. thanks tr4nslator
2009-04-22 04:18:53 +00:00
Brandon Aaron
3715d73f79
fix for #2911
2009-04-22 02:31:29 +00:00
Brandon Aaron
f8ef75eb91
remove trailing spaces
2009-03-23 01:55:17 +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
John Resig
dae96f552e
Added some more information to the unload event cleanup.
2009-03-19 15:16:02 +00:00
John Resig
985856b823
No longer use arguments.callee or RegExp (use new RegExp, instead) for ES 3.1 and Caja compatibility. Fixes jQuery bug #4251 .
2009-02-26 18:00:41 +00:00
Ariel Flesler
48164ee603
jquery event: Fixing event.currentTarget for live().
2009-02-23 13:27:48 +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
ce00f88ae2
Added a fix, suggested by Diego, for IE firing the ready event too late. Fixes bug #3988 .
2009-01-28 22:38:00 +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
Ariel Flesler
735d44f6df
jquery event: closes #3843 . Some events' timeStamp are wrong on Firefox, we don't rely on the native value anymore. timeStamp reflects object creation, not last event triggered.
2009-01-19 22:20:25 +00:00
John Resig
c2fad371f1
Made the IE frameElement check more explicit. Fixes #3880 .
2009-01-17 22:04:23 +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
6898cd6d2a
jquery event: Fixes #3538 . unbind on many events was failing.
2009-01-08 22:21:16 +00:00
John Resig
69e86d4f98
The triggered flag was being set too early, which was preventing bubbling form working when a
...
native event existed.
2009-01-05 20:43:24 +00:00
Ariel Flesler
42c99472cc
jquery event: Removed a needless if (old code)
2009-01-05 13:31:21 +00:00
John Resig
d1146aa7bf
.live("div div") was failing due to the extra space in the selector (which conflicted with multiple event binding in .bind).
2009-01-04 23:58:43 +00:00
Ariel Flesler
9472728bce
jquery event: event.stopImmediatePropagation() stops live handlers as well.
2009-01-04 22:32:18 +00:00
Ariel Flesler
303ad32c74
jquery event: Misc, removed a commented line from last commit.
2009-01-02 23:44:06 +00:00
Ariel Flesler
b2552e6ea3
jquery event: Now using an internal argument to detect if bubbling on $.event.trigger. The other would fail when it receives an event object with target. Also, the target isn't nulled anymore.
...
In addition, there was a lot of code running O(n) during bubbling while not needed.
2009-01-02 23:07:16 +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
c7a14f1391
jquery event: event.timeStamp wasn't being created when passing just the type to the constructor.
...
Misc: Simplified the readyList execution code.
2008-12-31 03:36:51 +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
Ariel Flesler
0a846e5be6
jquery event: removed the argument dohandlers from $.trigger. Uses another approach.
2008-12-30 23:29:14 +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
77477d5634
Disabled native event triggering (and, thus, bubbling) for global events.
2008-12-22 14:47:34 +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
25885e07b2
Added support for bubbling triggered events.
2008-12-22 01:57:06 +00:00