Commit graph

2104 commits

Author SHA1 Message Date
jaubourg f74b844989 The script prefilter now forces cross-domain requests type to GET. 2011-01-16 05:25:45 +01:00
jaubourg 914aa3d66b Makes it so a prefilter can change the type of a request. 2011-01-16 05:24:14 +01:00
jaubourg 21143c3b21 Removed internal dataTypes option and added headers & crossDomain options into commented out options of ajaxSettings. 2011-01-16 03:05:03 +01:00
jaubourg 8ab23aec2c Fixes #2994. Not finding a transport now fires the error callbacks and doesn't make ajax return false. Had to revise how jsonp and script prefilters & transports work (better separation of concerns). Also took the opportunity to revise jXHR getRequestHeader and abort methods and enabled early transport garbage collection when the request completes. 2011-01-16 02:57:39 +01:00
jeresig cf7ddcf79a Revert "Revert fb4445070c which is no longer necessary with the release of Opera 11. Fixes #7608." We will be continuing to support Opera 10.6 in jQuery 1.5.
This reverts commit 012f0c3b4b.
2011-01-14 14:12:29 -05:00
jeresig a7ab491a5d Merge branch 'master' of https://github.com/scottgonzalez/jquery 2011-01-14 11:23:05 -05:00
wycats 52a02383fa Fix a strange Chrome issue 2011-01-14 11:21:45 -05:00
Jared Grippe d483ce0a9c added jQuery.subclass 2011-01-14 10:38:32 -05:00
Scott González e5ee89ec9a Avoid running jQuery.unique() for methods that are guaranteed to produce a unique result set. Fixes #7964 - Some traversal methods perform an unnecessary uniqueness check. 2011-01-14 09:55:40 -05:00
scottjehl 73d060b522 set name to lowercase, since it's passed as initial caps 2011-01-13 14:20:00 -05:00
scottjehl 610ab137da Merge branch 'master' of https://github.com/jquery/jquery 2011-01-13 14:14:04 -05:00
jaubourg a8fa5f2ec1 Moved jQuery.ajax.prefilter and jQuery.ajax.transport to jQuery.ajaxPrefilter and jQuery.ajaxTransport so that proxying the ajax method doesn't turn into a nightmare. Thanks go to scott_gonzalez and DaveMethvin for pointing out the issue. Also made ajaxSetup return "this" to enable chainable definitions -- jQuery.ajaxSetup(...).ajaxPrefilter(...).ajaxTransport(...). 2011-01-13 18:33:24 +01:00
jaubourg 44fc87f66c Fixes #4964. Adds a statusCode object together with a new statusCode method on the jXHR object (deferred behaviour). They accept a map of statusCode/callback(s). Callbacks are fired when the status code of the response correponds to the key (as a success or an error callback depending on how the request completed). Unit tests added. 2011-01-13 17:01:25 +01:00
jaubourg 57956152d8 Removed xhr pooling since failing cross-domain requests leaves the xhr object in an undefined state in Firefox. Also rewrote comments related to the active xhr list so that they make sense. 2011-01-13 16:58:16 +01:00
jaubourg 667a3b31e6 Reworked script and xhr abort logic to take advantage of the fact jXHR.abort will complete the request itself if not done already. 2011-01-13 02:05:39 +01:00
jaubourg b07d43c649 Cleans up statusText handling and simplifies 304 notmodified logic. 2011-01-13 01:43:42 +01:00
jaubourg 97b244312e Removes unnecessary variables and adds much needed comments into the data conversion logic in ajax. 2011-01-13 01:18:46 +01:00
jaubourg ed1144816b Fixes a regression by calling dataFilter with the second argument set as the dataType. 2011-01-13 00:49:58 +01:00
jaubourg e9fb7d5be6 Gets rid of a var statement by moving variable declarations up. 2011-01-13 00:41:10 +01:00
jaubourg e221d39e98 Script transport now uses ajaxSetup to define script dataType. 2011-01-12 18:54:15 +01:00
jaubourg 14b07ec5de AjaxSetup now uses deep extend internally to accomodate map structured options. 2011-01-12 18:53:00 +01:00
jaubourg 0c51e9d55f Fixes #4897. Added ?? as a context-insensitive placeholder for the callback name of a JSONP request. Unit tests provided. 2011-01-12 18:36:00 +01:00
jaubourg 5a721cf31b Fixes 4825. jQuery.fn.load: use the jXHR's Promise interface to get the actual response in case ajaxSettings contains a dataFilter. Unit test added. 2011-01-11 20:02:33 +01:00
Colin Snover b14f02899e Ensure that buildFragment clones elements properly in all browsers. Fixes #3879, #6655. Also improves form element clone tests and fixes bugs in $.fn.clone exposed by these new test cases related to the values of checkboxes and radio buttons in IE. 2011-01-09 18:38:44 -06:00
Colin Snover 012f0c3b4b Revert fb4445070c which is no longer necessary with the release of Opera 11. Fixes #7608. 2011-01-09 17:34:58 -06:00
Dave Methvin fcf623786a Ensure that the DOM element ref in an event handler is removed by cleanData to avoid an IE6/7/8 memory leak. Fixes #7054. 2011-01-09 16:25:44 -06:00
Dave Methvin 4e86766d54 Change embedded regexp to a variable (for #6876). 2011-01-09 16:22:11 -06:00
Colin Snover 80af46e8ff Fix jQuery.queue leaks empty queues. 2011-01-09 15:58:23 -06:00
Colin Snover 885d06c8ef Fix domManip leaks the first element when appending elements to multiple other elements. 2011-01-09 15:56:40 -06: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
jaubourg 1d1d4fe112 Moved unload abort code so that the event is only bound if the xhr transport is used. Fixes #5280. 2011-01-09 22:20:58 +01:00
jaubourg 8c8bd3bf6a Fixes #5812. =? will be detected even when it has been escaped during data serialization. 2011-01-09 21:48:52 +01:00
jaubourg 62a1a1a8fa Fixes #5803. Reworked jsonp prefilter so that it sets the dataType as jsonp and recognizes requests with originalSettings having jsonp or jsonpCallback to be jsonp. Moved default jsonp option value into ajaxSettings. Attached the transport to "jsonp" which avoids unnecessary testing. Transport factory sets dataType back to json for proper data conversion. 2011-01-09 21:19:27 +01:00
jaubourg 0f28835ee9 Make it so prefilters get access to the original settings. 2011-01-09 20:31:15 +01:00
jaubourg 5a5f67800b Fixes #5955. Option crossDomain now forces ajax to consider a request as cross-domain even when it is not. Useful for when servers issue redirects to cross-domain urls. Unit test added. 2011-01-09 16:50:13 +01:00
jaubourg c55a76a23f Make sure prefilters have been called and transport has been selected before sending any global event (in case the "global" option has been changed). 2011-01-09 16:32:51 +01:00
jaubourg afefb4f3d2 Fixes #7465. Reworked the regexp and associated test for cross-domain detection so that it now includes ports. Added cross-domain detection tests for protocol, hostname and port. 2011-01-09 06:01:00 +01:00
jaubourg d515068ee8 Fixes #7868. ResponseText is now properly propagated for error callbacks. 2011-01-09 04:53:29 +01:00
jaubourg 69497c3fd7 Fixes #7881. Setting contentType to false will prevent the Content-Type header from being sent. Unit test added. 2011-01-09 04:28:42 +01:00
jaubourg 98c6c4b2b0 Added a simple cache for xhr objects in the xhr transport. 2011-01-09 04:03:00 +01:00
jaubourg 1ca82ccd94 Renamed "complete" to "done" in order to avoid conflicts with jXHR.complete. 2011-01-06 01:26:06 +01:00
jaubourg 47e4cc1a0f Fixed mixing of tabs & spaces to make JSLint happier. 2011-01-06 01:18:03 +01:00
jaubourg c43b078c69 Renamed src/transports to src/ajax (in case we need prefilters in the future and to avoid a separate prefilters directory). 2011-01-06 01:17:31 +01:00
Colin Snover e56de77df9 Cleaning up trailing whitespace again. 2011-01-05 15:44:07 -06:00
wycats ae6655bcb6 Revert "Register as a CommonJS async module if in that kind of environment. Fixes #7102."
This reverts commit 6ffa730721.

Conflicts:

	src/core.js
2011-01-05 13:26:05 -08:00
rwldrn 8099cdce80 Bug #7608 elem.runtimeStyle throws exception in Opera 2011-01-05 13:32:59 -05:00
jaubourg cbf591152c "then" renamed "complete" and new "then" method defined using "complete" and "fail" internally. The API is still symetrical (complete/fail), still promotes AOP but is also now Promise/A compliant. Changed unit tests and ajax module accordingly. 2011-01-05 04:29:30 +01:00
Dave Methvin eed3803c98 When serializing text, encode all line breaks as CRLF pairs per the application/x-www-form-urlencoded specification. Fixes #6876. 2010-12-31 13:56:51 -06:00
jaubourg 6fb9759a75 Simplified the way a Promise is tested for (removed promiseMarker). Removed isCancelled helper method from _Deferred, wasn't used nor tested. Reworked jQuery.Deferred and removed unnecessary variables. Also ensured a Promise will return itself when asked for a Promise. Finally, the jQuery.when tests have been revamped. 2010-12-31 04:15:15 +01:00
jaubourg 3c6f1380fa Revised conversion logic to handle converter equal to true properly. 2010-12-31 04:15:12 +01:00
jaubourg 6dbffb8596 Introduced a new promise method on deferreds that returns an immutable object (exposing then, fail, isResolved, isRejected and promise itself only). Remove $.isDeferred and moved logic directly into $.when. Made sure $.when returns a promise by using promise(). Used promise() in ajax code too. 2010-12-31 04:15:11 +01:00
jaubourg 6165cc45b7 Renamed several ajaxSettings options. Removed cors test, fixed failing cors test. 2010-12-31 04:15:09 +01:00
jaubourg 2a5c16f217 Revised logic in data conversion to account for when dataFilter modifies the dataTypes list. 2010-12-31 04:13:42 +01:00
jaubourg 981d1e08eb Removed re-usability from jXHR object (no more open, send & onreadystatechange support). Streamlined the implementation and put it back into ajax.js (removed xhr.js in the process). Went back to a more simple & direct approach to options handling (keeping much room to further minification-related optimizations). Code is cleaner, smaller & faster. Removed & edited unit tests accordingly. All build files have had xhr.js removed. 2010-12-31 04:13:40 +01:00
jaubourg 6f53be1839 Removed dataCheckers, added true as possible value for dataConverters indicating dataType equivalence (ie. no conversion has to be performed). 2010-12-31 04:05:58 +01:00
unknown 240d8b681e Removed custom method in isDeferred and when. 2010-12-31 04:05:56 +01:00
unknown 23d455b446 Deferred cannot be cancelled by returning false in a callback. Exception in the callback are still propagated and execution of remaining callbacks is still possible. 2010-12-31 04:05:55 +01:00
unknown fd63416ab1 Removed a console.log :/ 2010-12-31 04:05:54 +01:00
unknown 2d4001b82c Capitalized Deferred & _Deferred to clearly mark them as new types, like Event. 2010-12-31 04:05:53 +01:00
unknown 22e28b01e6 Changed dataConverters key format. 2010-12-31 04:05:52 +01:00
unknown 524bf39400 jQuery.parseXML extracted from ajax & added to core, needs unit testing. 2010-12-31 04:05:50 +01:00
jaubourg 5bfbe7eaf6 Removed NFE to make old Safari happy and avoid leaks in IE (as per David Murdoch's warning). 2010-12-31 04:05:49 +01:00
jaubourg d5bb001b9a Rewrote the data conversion logic in ajax. Should be cleaner and faster. 2010-12-31 04:05:48 +01:00
jaubourg e29ebbc199 Renamed jQuery.xhr.bindTransport as jQuery.xhr.transport. Generalized the implementation and made prefilters use the same logic. Cleaned up code and removed as many loops and each as possible. 2010-12-31 04:05:46 +01:00
jaubourg 2fec5dbecd Fixed a loop that only worked in webkit. 2010-12-31 04:02:33 +01:00
jaubourg 39d96ab8c5 Added deferred to core. Used internally for DOM readyness and ajax callbacks. 2010-12-31 04:01:39 +01:00
jaubourg 43828b7482 Removed NFE to make old Safari happy and avoid leaks in IE (as per David Murdoch's warning). 2010-12-31 03:56:11 +01:00
jaubourg fef0f63526 Rewrote the data conversion logic in ajax. Should be cleaner and faster. 2010-12-31 03:56:10 +01:00
jaubourg 4c49c87d4d Renamed jQuery.xhr.bindTransport as jQuery.xhr.transport. Generalized the implementation and made prefilters use the same logic. Cleaned up code and removed as many loops and each as possible. 2010-12-31 03:53:00 +01:00
jaubourg c072dbd4e2 Fixed a loop that only worked in webkit. 2010-12-31 03:49:23 +01:00
jaubourg 5bacb53866 Added deferred to core. Used internally for DOM readyness and ajax callbacks. 2010-12-31 03:49:22 +01:00
Colin Snover 4eeae8b0bc Remove patch for very early versions of Opera 9 that made it impossible to animate values smaller than -10000. Fixes #7193. Thanks to igorw for initial patch & test case. 2010-12-30 01:23:08 -06:00
Colin Snover 3e0cc81504 Clean trailing whitespace from all files. 2010-12-30 00:34:48 -06:00
Colin Snover 429b078dc7 Merge branch 'fix7762' into jquery master. Fixes #7762. 2010-12-30 00:02:56 -06:00
Colin Snover 9029dc02a2 Update CommonJS module registration to check to see if define is a function instead of just not undefined. 2010-12-29 23:58:03 -06:00
jaubourg dfa5707306 Fix for #7865. Scripts onload handler passes event as first parameter so statusText is now passed as second argument for aborts. 2010-12-30 04:41:52 +01:00
Dave Methvin c27d5ca6f5 By default, use document root rather than current selection's context when add()ing elements. Fixes #7853. 2010-12-28 21:07:04 -05:00
Dave Methvin 5fd21fc02b Don't cache non-html strings in buildFragment to avoid possible collision with the names of Object methods like toString. Also makes the unit tests 0.5% to 8% faster. Fixes #6779. 2010-12-27 13:43:52 -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
jrburke 6ffa730721 Register as a CommonJS async module if in that kind of environment. Fixes #7102. 2010-12-27 13:03:27 -06:00
Colin Snover 01cba2ecaa Merge SlexAxton/jquery:master into jquery/jquery:master. 2010-12-26 22:12:56 -06:00
Alex Sexton faabb2c318 Changed the expando string to use a random number instead of the time, so collisions become less likely. Also added jQuery version to instantly differentiate separate versions of jQuery (a common use case for noConflict, etc, when two jQuery instances are on the page). Fixes #6842. 2010-12-26 22:07:46 -06:00
Ben Alman 78a6f5b152 Removed unnecessary upper/lowercase, it's all just lowercase now (since $.ajax will uppercase as-needed). 2010-12-26 22:49:01 +00: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
Ben Alman 1830db4226 WETness getting you down? Fear not, the $.get and $.post methods are now 866% DRYer. This fixes #7847. 2010-12-26 18:52:27 +00:00
Colin Snover 52b1709b94 Fix reliableHiddenOffsets test was not working properly when table cells have borders, causing unnecessary slowness in some browsers. Thanks to matjas for his $.support test page. 2010-12-26 10:35:14 -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
Colin Snover 1f92edee20 Fix fix for #6481 introduced at 7862c45ad2 which did not like it when Array.prototype was modified on empty arrays. 2010-12-22 18:54:22 -06:00
Colin Snover 82ac384b49 Don't use for-in loops on Arrays. Fixes #7817. Thanks to dmethvin.
Conflicts:
	src/manipulation.js
2010-12-22 18:32:33 -06:00
Colin Snover a2bf7ab3c0 Code style fix 2010-12-22 18:17:58 -06:00
Colin Snover e199ead4cb More unit tests and a $.hasData that works for JS objects too. 2010-12-22 15:03:01 -06:00
Colin Snover f5d4bf8920 Update jQuery.hasData to always return a boolean, with unit tests. 2010-12-22 14:54:37 -06:00
Colin Snover 445fdf720c Remove code for ticket #7717 which has been marked WONTFIX to match existing $.data functionality and to prevent infinite loops caused by circular references. 2010-12-22 14:43:17 -06:00
scottjehl 18fa1fd9da Getting window dimensions currently fails in Nokia browsers, causing JS error (and consequently making jQuery Mobile fail to render the page). Based on a tip from Ben Nolan, this fix returns window.screen[width|height] if the other attempts at getting window dimensions fail. On mobile at least, it seems to make sense, and on desktop (assuming this issue would ever show up on desktop), this might be better than returning false or undefined. 2010-12-22 15:24:07 -05:00
Colin Snover 5607bd8d53 Fix a potential error in the previous commit caused by the use of a separate index variable. Thanks to dmethvin for the review. 2010-12-22 09:14:53 -06:00
Dave Methvin acab4ab0e5 Use for loop instead of for/in loop to protect sanctity of Array.prototype. Fixes #7817. Test case for this commit is shared with the fix for #6355, https://github.com/jquery/jquery/pull/140 . 2010-12-21 10:00:49 -05:00
Dave Methvin 4424bda377 Use a for loop rather than for/in loop when copying events, so that code will work with an augmented Array.prototype. Fixes 7809. 2010-12-20 22:23:59 -05:00
Colin Snover faefbb1ad0 Fix #7717 and #7165. Thanks to dmethvin and iliakan for their help fixing these issues. 2010-12-19 15:33:53 -06:00