Commit Graph

585 Commits

Author SHA1 Message Date
jeresig
c475222bfb 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). 2011-01-20 11:34:35 -05:00
Anton M
265cf0efa7 Remove an unused regex and optimize character escape regex usage. 2011-01-19 00:15:28 +01:00
Brandon Sterne
220a0ce162 Defer scriptEval test until first use to prevent Content Security Policy inline-script violations from occuring. Fixes #7371. 2011-01-17 16:31:12 -05:00
jaubourg
5798446b98 Put the split to get the list of promise methods out of the promise method itself and also switched from jQuery.each to a while loop to remove as much overhead as possible. Thanks go to scott_gonzalez for reminding me of this. 2011-01-16 18:33:32 +01:00
jaubourg
c272f5f7da Implements joined jQuery.when statements. Makes it so calling jQuery.when with no parameter returns a resolved promise. Ensures promise method on promises supports the promise(obj) signature. Ensures a deferred and its promise always return the same promise (itself for the promise). Unit tests provided. 2011-01-16 17:41:39 +01:00
Jared Grippe
d483ce0a9c added jQuery.subclass 2011-01-14 10:38:32 -05: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
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
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
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
rwldrn
5f52e61d74 4321 jQuery('#') returns empty jquery object 2011-01-01 17:18:47 -05:00
rwldrn
037d6bd5c3 4321 returns empty jquery object 2011-01-01 17:13:04 -05: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
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
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
2d4001b82c Capitalized Deferred & _Deferred to clearly mark them as new types, like Event. 2010-12-31 04:05:53 +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
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
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
3e0cc81504 Clean trailing whitespace from all files. 2010-12-30 00:34:48 -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
jrburke
6ffa730721 Register as a CommonJS async module if in that kind of environment. Fixes #7102. 2010-12-27 13:03:27 -06:00
Gianni Chiappetta
6bc9fc7c10 Perf. improvement based on fearphage's suggestion (direct vs call vs apply). 2010-12-18 19:17:37 -05:00
Gianni Chiappetta
5b1b57850c Add a quick test to $.support for native bind.
As per the suggestion by ajpiano: 9f8cd6c499 (commitcomment-218658)
2010-12-15 18:31:10 -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
jeresig
b4bb6e1126 Backing out fb6c038bf0, was causing jQuery.param tests to fail - unfixes #7413. 2010-12-09 13:07:44 -05:00
jeresig
bc05cb9d80 Merge branch 'explain-map-concat' of https://github.com/ajpiano/jquery into ajpiano-explain-map-concat 2010-12-09 12:51:14 -05:00
jeresig
fb6c038bf0 Merge branch 'bug_7413' of https://github.com/rwldrn/jquery into rwldrn-bug_7413 2010-12-09 12:32:15 -05:00
adam j. sontag
34bf1a2a7d Add a comment explaining that jQuery.map flattens arrays 2010-11-27 17:15:33 -05:00
Jephte CLAIN
dd79199a08 fix to follow current source style 2010-11-22 08:30:17 +04:00
Anton M
5c0b5d2560 Improve performance of get() for negative indices. Fixes #5476. 2010-11-19 12:28:13 +01:00
rwldrn
fc563cc42a Fixes #7413; isEmptyObject() check to see if obj passes isPlainObject 2010-11-09 16:14:11 -05:00
John Resig
983548f8eb Make sure that if an additional load event is triggered (such as an iframe being dynamically injected in DOM ready) the ready event isn't triggered twice. Fixes #7352. 2010-11-09 13:44:06 -05: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
jeresig
3df41db036 Make sure that the ready event doesn't double-fire when .bind(ready) is used. Fixes #7247. 2010-10-22 00:08:34 -04:00
Jephte CLAIN
689d63f487 Return control of $ and jQuery only if it is really necessary. This make
jQuery.noConflict() callable anytime.
2010-10-19 09:32:13 +04:00
John Resig
a7d0b0b9e8 Var wasn't being explicitly declared. Fixes #7226. 2010-10-17 10:58:01 -04:00
jeresig
0be7f4eb4f Make sure that opacity is being reset properly on a show animation. Additionally expose jQuery.isNaN from the data module. 2010-09-27 11:51:01 -04:00
jeresig
e0a9615f82 Make sure that the body element exists before doing the body selector optimization. Fixes #6529. 2010-09-24 15:53:38 -04:00
jeresig
a220c81eb9 Increase the speed of the single setTimeout calls for the ready event. 2010-09-24 10:06:36 -04:00
jeresig
6dfdb14753 Merge branch 'master' of github.com:jquery/jquery 2010-09-23 12:09:49 -04:00
Robert Katic
484cc6e220 Made jQuery.type more consistent with host objects. 2010-09-23 12:08:41 -04:00
Robert Katic
694b625c92 Ensured that arrays are not considered same as plain object on deep extending. Fixes #5991. 2010-09-23 12:07:06 -04:00
jeresig
e270d804b4 Delay the result of the readyState check to give scripts the opportunity to delay ready, as described by @jrburke in 747ba7defd. 2010-09-23 11:38:22 -04:00
jeresig
d7a6e75241 Add some tests for jQuery.isWindow and make sure that we're operating against an object before testing. 2010-09-22 16:50:38 -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
8e1d369710 Some minor lint fixes for the RegExp. 2010-09-22 09:46:21 -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
19b5d9e874 Re-work the document scoping. 2010-09-22 08:08:45 -04:00
John Resig
1ac3713e7f Fix bug with the readyWait DOM ready addition. 2010-09-21 16:26:36 -04:00
John Resig
747ba7defd Allow plugins to delay the exeuction of the ready event. Delay the ready event by calling: jQuery.readyWait++ and force the event to fire by doing: jQuery.ready(true). Fixes #6781. 2010-09-20 14:53:29 -04:00
jeresig
492a2e2c53 Wrap the core return in parens to fix a confused JSLint. 2010-09-14 09:57:26 -04:00
jeresig
2663041924 Make sure that jQuery is being exposed outside of core (this will be stripped during the build process). Follow-up to #7011. 2010-09-09 08:23:10 -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
John Resig
13f27fcd05 Switched to use 'in' for the setInterval/window check as it also skirts around the Safari 2 NodeList crasher. See the discussion in 94f35d0519 for more details. 2010-08-27 18:17:07 -04:00
John Resig
1ead20c2ed Blackberry 4.6 is capable of finding elements that are no longer in the DOM via getElementById. It only appears to happen when the node has been inside of a cloned Document Fragment. Fixes #6963. 2010-08-27 15:14:30 -04:00
John Resig
ea8b1584b1 Use the native isArray whenever possible. See perf test by jdalton here: http://jsperf.com/isarray-vs-other Fixes #6825. 2010-08-27 13:15:48 -04:00
John Resig
7f18d29287 Simplify the logic in $.type, thanks to jdalton for the suggesiton in 5d2be7e299. 2010-08-27 07:03:30 -07:00
John Resig
5d2be7e299 Added some tweaks to $.type to handle null and undefined. Added a bunch of unit tests as well. 2010-08-27 06:10:52 -07:00
John Resig
94f35d0519 Adding in a jQuery.type(obj) method (a simple map to using Object.prototype.toString.call). Fixes #3330. 2010-08-25 09:57:34 -07:00
John Resig
18dad47489 Tweaked logic for working around Blackberry 4.7 makeArray(RegExp) issue. Fixes #6930. 2010-08-25 09:27:30 -07:00
John Resig
396dd21273 Fixing getting/setting classes and makeArray(RegExp) for Blackberry 4.7. Fixes #6930, #6931. 2010-08-23 12:38:55 -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
ba8938d444 Switch to using String.prototype.trim from String.trim as it's more-widely available. 2010-03-11 10:49:19 -05:00
jeresig
141ad3c3e2 Landing a faster trim method. Based upon the work by Travis Hardiman and DBJDBJ. More details here: http://forum.jquery.com/topic/faster-jquery-trim Fixes #2279, #4452, and #4835. 2010-03-09 09:14:27 -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
abcc1a76ee If .attr() is run on no elements undefined should be returned (as should be the case when no attribute is found). Fixes #6012. 2010-02-13 02:23:38 -05:00
jeresig
94d925cd46 Make sure leading whitespace is trimmed for parseJSON. Fixes #6031. 2010-02-13 02:14:23 -05:00
jeresig
7a467ed936 Remove the need for the internal setArray method, it was only really used by pushStack anyway. Fixes #6003. 2010-02-13 01:45:09 -05:00
jeresig
cb65daa399 The context for 'body' should still be document, in this case. 2010-01-29 15:04:26 -05:00
jeresig
b8076a914b Landing some minor perf optimization to jQuery(). 2010-01-28 17:17:51 -05:00
jeresig
0db207da23 Optimize for the case where a fragment-bound element is being injected into one other element. 2010-01-28 16:30:37 -05:00
jeresig
781fe8b80d Make empty strings (and other non-string values) simply return null from parseJSON. Also added some parseJSON tests. Fixes #5859. 2010-01-23 17:08:26 -05:00
jeresig
0912109ffc Expose the JSON parsing logic. Fixes #5914. 2010-01-23 16:51:51 -05:00
jeresig
a6ef036bb6 Centralize the logic for throwing exceptions. Fixes #5913. 2010-01-23 16:48:47 -05:00
Ben Alman
09ef5b7598 Simplification of uaMatch, based upon the patch by Ben Alman. 2010-01-23 12:13:46 -05:00
John Resig
eb496f757a The inArray declaration was accidentally duplicated. 2010-01-15 10:49:18 -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
Paul Irish
7be5ec1248 browser version detection revised for opera >= 10, which was reporting itself as 9.8 due to their new policy 2010-01-12 11:42:31 +08:00
Neeraj Singh
8d7965a607 fixed typo in comments 2010-01-12 11:42:22 +08:00
jeresig
600d314538 A first pass at making sure that all the setter function arguments receive the index of the element and a relevant value to work with. Fixes #5763. 2010-01-06 15:08:07 -05:00
Filipe Fortes
0d1a2c1b11 Make sure to do a deep copy on arrays. #5750 2010-01-07 00:11:22 +08:00
jeresig
230614b4df Merging in jQuery.proxy() branch. 2010-01-05 19:18:39 -05:00
jeresig
ffb1867a43 Rewrite of jQuery.browser to become engine-centric, rather than browser-centric. Also attempt to determine the engine version in a smarter fashion, less prone to error. Finally, enhanced the test suite with 255 useragent strings from http://user-agent-string.info/download for testing. jQuery.browser.safari is now deprecated, use jQuery.browser.webkit instead. 2010-01-05 17:01:20 -05:00
jeresig
1d2b1a57da Added in jQuery.proxy(obj, name), like the method described in Secrets of the JavaScript Ninja and in Dojo's Hitch, and added in some unit tests. 2009-12-31 15:17:52 -05:00
jeresig
a5dbca4a06 Moved jQuery.proxy() into core. 2009-12-31 15:06:45 -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
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
298bfb79e6 The constructor check for isPlainObject was redundant, everything still passes without it. 2009-12-18 19:43:04 -05:00
jeresig
67b3be24e1 Added additional checks for DOM nodes and window to isPlainObject, IE 8 was still letting those pass through. Fixes #5669. 2009-12-18 19:36:35 -05:00
jeresig
d40083c866 Disabled the passthrough .attr(method_name) functionality. You can now use it if you do: .attr({method_name: value}, true) OR as an easy initialization method: jQuery('<div/>', {html: '...', id: 'test'}). 2009-12-18 12:41:53 -05:00
Robert Katic
148fb7ba8e Made isPlainObject() supporting null, undefined, and window values on IE too. Also added some related tests. Fixes #5669. 2009-12-19 01:19:34 +08:00
jeresig
ed5731dcc4 Revert the changes from 65ebf57c1e, they were ineffectual against IE's insanity: http://ejohn.org/files/bugs/fragment/ Used a different tactic instead (just don't return a fragment from .parent()). Fixes #5638. 2009-12-17 14:17:05 -05:00
jeresig
9a0174b057 Moved readyList check. 2009-12-16 23:09:55 -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
John Resig
65ebf57c1e Make sure that dynamically-created elements don't have a parent. Fixes #5638. 2009-12-10 17:01:04 -08:00
John Resig
474d814076 Moved some methods around inbetween core.js and traversing.js. Core methods shouldn't rely upon other modules (e.g. the selector engine) wherever possible. 2009-12-10 09:25:25 -08:00
John Resig
ede2f2c4f7 Made some minor formatting changes to the access function. 2009-12-10 09:07:19 -08:00
John Resig
715d1c5a30 Rewrote .merge() (faster and less obtuse now). Fixed #5610. 2009-12-09 21:43:20 -08:00
Yehuda Katz
1a4d1904ae Fix up whitespace and a couple of glitches. 2009-12-09 21:17:10 -08:00
John Resig
04524287d3 Switched jQuery() to represent jQuery([]) instead of jQuery(document). 2009-12-09 20:36:07 -08:00
John Resig
9d8bd161b6 Clarified the use of jQuery.browser and enforced jQuery.browser.firefox matching Firefox, after the discussion in 17791c9a3e. 2009-12-09 15:07:16 -08:00
John Resig
5e2163085c Make sure that document ready events, inside a document ready, are added to the queue rather than executing immediately. Fixes #5261. 2009-12-09 13:45:06 -08:00
John Resig
17791c9a3e Added in jQuery.browser.firefox, deprecated jQuery.browser.mozilla. 2009-12-08 22:52:32 -08:00
Dave Methvin
d3dc2d1234 Get browser version rather than rendering engine version.
Don't recognize Chrome as Safari.
See results of different userAgent strings here:
http://spreadsheets.google.com/ccc?key=0Aj5JJFjq9rZDdHdxXzRLVnY0SzFpRTBOUDc4VmhzRVE
2009-12-09 14:43:18 +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
62a34450c0 Added an extra function check to prevent crashes in Safari 2. Fixes #3039. 2009-12-06 20:20:49 -08:00
John Resig
19ad49e607 Use the isXML function from Sizzle. 2009-12-06 17:52:31 -08:00
John Resig
1fe9ff5482 Merge branch 'master' of git@github.com:jquery/jquery 2009-12-06 15:51:15 -08:00
John Resig
87ba780c69 Renamed isObjectLiteral to isPlainObject (makes more sense, per the suggestion of Michael Geary). 2009-12-06 17:11:51 -05:00
Dave Methvin
abbd2f4c3c Fix regexp for $.trim so it doesn't whack embedded spaces. 2009-12-06 10:31:57 +08:00
Ben Alman
2b481b93cf Landing Ben Alman's patch to add nextUntil, prevUntil, and parentsUntil. Also adds some tests for prevAll and nextAll, and fixes an test edge case in parents. 2009-12-04 12:28:47 -05:00
jeresig
ad4f28631a Make sure that a DOM node isn't getting passed through (as is the case in IE, it has a toString of [object Object]. 2009-12-02 14:59:19 -05:00
jeresig
df6e02a4a7 Merge branch 'master' of github.com:jquery/jquery 2009-11-30 13:42:26 -05:00
jeresig
90ba57ce6d Fixed bug with singleTag matching in core.js. 2009-11-30 13:42:19 -05:00
Yehuda Katz
17955cacf4 Fixes $.trim for &nbsp; closes #4980 2009-11-30 10:22:18 -08:00
Robert Katic
ac00fe5bbb Generic jQuery.merge and safer jQuery.makeArray(nodeList).
* Made jQuery.marge more generic supporting null and undefined values, and supporting array like objects as results. Fixes #5527.

* Made jQuery.makeArray(nodeList) more safer using jQuery.merge internally. Fixes #5528.

* Added a second "results" argument to jQuery.makeArray for internal usage to avoid intermediary arrays in init.
2009-11-26 00:56:49 +08:00
Robert Katic
93be758de9 Made jQuery.extend(true, ...) to extend recursively only 'object literal' values. 2009-11-12 21:59:47 +08:00
Robert Katic
990d9ca1b0 Made isObjectLiteral to work correctly with custom objects with empty prototypes. 2009-11-12 21:59:47 +08:00
lrbabe
c07d15d5a2 Use array.indexOf if available (speeds up modern browsers). Thanks to lrbabe and Andrea for the patch. Fixes #5160. 2009-11-11 15:15:58 -05:00
John Resig
c4c820efff Made jQuery('<div/>') and jQuery('<div></div>') use the same code path (making the second one faster). Fixes #5293. 2009-11-11 13:49:29 -05:00
John Resig
dee8e45ef3 Removed the use of this.length++ as it makes it hard to use the init method directly. Fixes #4955. 2009-11-11 13:42:50 -05:00
John Resig
4b55e94d08 Renamed isObject to isObjectLiteral to be more specific. 2009-11-10 23:07:05 -05:00
rkatic
c2bbcd8833 Added comments to isObject. 2009-11-09 19:32:24 +08:00
John Resig
ef05f44cce Comment nodes are discarded from a merge, for no apparent reason. Fixes #5438. 2009-11-07 16:15:33 +01:00
John Resig
bbffc99f7c Moved a bunch of methods out of the jQuery-specific Sizzle code into more-appropriate files, in jQuery itself. 2009-10-26 18:07:57 -04:00
John Resig
67d445a703 A follow-up to [6578] (which stopped adding expandos to elements that didn't have data). That broke jQuery.unique() (so we're now using the unique from Sizzle). Using Sizzle's unique (which also sorts in document order) changed how add, andSelf, parents, nextAll, prevAll, and siblings work. after and before were changed to not use .add() (in order to guarantee their position in the jQuery set). Also, jQuery.data(elem) was updated to return that element's data object (instead of its ID).
$("<div/>").after("<span/>")
=> [ div, span ]
(calling after on a disconnected DOM node adds the nodes to the end of the jQuery set)

$("<div/>").before("<span/>")
=> [ span, div ]
(calling before on a disconnected DOM node adds the nodes to the beginning of the jQuery set)

$("div").add("span")
=> [ div, span, span, div, span ]
(results now come out in document order)

$("div").find("code").andSelf();
=> [ div, code, code ]
(results now come out in document order)

Same goes for .parents(), .nextAll(), .prevAll(), and .siblings().

Exception: .parents() will still return the results in reverse document order.

jQuery.data(elem)
=> { object of data }
(no longer returns the unique ID assigned to the node)
2009-09-25 17:55:20 +00:00
Ariel Flesler
66c58e9db6 jquery core: removing the body optimization, as it is then handled by $("TAG"). 2009-09-14 17:33:15 +00:00
Ariel Flesler
9e1a955aab jquery core: commenting the new access function. 2009-09-11 17:47:40 +00:00
Ariel Flesler
d1285504fb jquery core: Closes #5189. Added a generic function to handle getting/setting key-value/setting a hash. 2009-09-09 21:14:28 +00:00
Ariel Flesler
aadc268abf jquery core: fixes 5187. getElementsByTagName optimization was breaking $('div').live() 2009-09-09 16:50:58 +00:00
Ariel Flesler
bf230ffb6a jquery core: closes #5186. getElementsByTagName optimization was breaking the selector attribute. 2009-09-09 16:33:16 +00:00
John Resig
4ea4fad090 Optimize jQuery() for the case $("TAG"). 2009-09-08 04:26:47 +00:00
John Resig
1e750a00e9 Use the native Array indexOf method if it exists, for jQuery.inArray. 2009-09-08 01:45:11 +00:00
John Resig
9d8d74569c Split out the fragment-building code from domManip. Switched core.js to using that instead. Also moved the standalone tag detection to $(...) for performance. 2009-09-07 18:58:01 +00:00
John Resig
b7d4e0e46c Added an optimization for the case where $("body") is used. 2009-09-07 17:20:38 +00:00
John Resig
569c8b45c0 Fixed a bug with the isXMLDoc test - also made sure that isXMLDoc was handling the case where documentElement is undefined (which only occurs on HTML documents in IE). 2009-08-27 20:07:45 +00:00
John Resig
957cd6fb2a Tweaked the isXMLDoc iframe test case to test the document, not the body element (which doesn't exist in IE). Also made the isXMLDoc code handle cases where elem is null, undefined, etc. 2009-08-27 19:22:48 +00:00
John Resig
bddd1837bb Moved exposing window.jQuery and window.$ to the end of the jQuery file (helps some compatibility cases with older version of Prototype). Fixes ticket #4834. 2009-08-10 21:22:31 +00:00
John Resig
b7a3b220a8 Fix some missing braces in core.js. 2009-07-27 20:48:42 +00:00
John Resig
18a6fbbb6a Added an improvement to quickExpr and some more tests for jQuery('html'). Fixes #4979. 2009-07-27 20:47:32 +00:00
John Resig
255a293cda Shortened the isXMLDoc code, based upon recommendation from Andrea. 2009-07-27 13:21:19 +00:00
John Resig
2cd9ee3510 Added an extra documentElement check to isXMLDoc for IE - and added a number of unit tests for isXMLDoc. Fixes #4833. 2009-07-27 13:02:41 +00:00
John Resig
26eda09892 Changed .get(-Number) to use .slice() instead of .toArray() (which doesn't take any arguments). Follow-up from commit [6484]. 2009-07-23 22:38:29 +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
b964e56946 Optimizing isXMLDoc. 2009-07-22 17:30:17 +00:00
John Resig
29ff710c9b Made some syntax tweaks to core.js. 2009-07-19 19:55:21 +00:00
John Resig
b953c1d50a Saved some references to native methods, instead of re-referencing them on every call. 2009-07-19 19:50:45 +00:00
John Resig
03de2cb5e7 Moved some RegExp in core.js, goes toward #4111. 2009-07-19 19:47:30 +00:00
John Resig
0d5c3a68a0 Standardizing on .test() and .exec() - moving away from using .match() for RegExp. Fixes jQuery bug #4113. 2009-07-19 13:21:51 +00:00
Yehuda Katz
1a7f72e7fe Add test for jQuery(jQueryObj) cloning and simplify new get() code 2009-07-17 17:33:44 +00:00
Yehuda Katz
88bd74c732 jQuery objects have a default length of 0. Simplifies $() some. 2009-07-17 01:47:26 +00:00
Ariel Flesler
a38a5cd531 jquery core: Simplifying isEmptyObject() and adding tests. 2009-07-16 15:16:44 +00:00
Yehuda Katz
190812c3be Refactor jQuery.data a bit to reduce property lookups
- Also added jQuery.isEmptyObject
2009-07-16 07:32:31 +00:00
Yehuda Katz
c10f87120f jQuery.extend(true, Object, Object) copies custom objects correctly.
- Also update jQuery.isObject to handle this case correctly
2009-07-16 07:32:03 +00:00
Yehuda Katz
8d52c27808 jQuery.extend(true, Object, Object) copies objects with length keys correctly 2009-07-16 07:31:55 +00:00
Yehuda Katz
e532dfe522 Add support for .get(-Number) Closes #4188 2009-07-16 07:31:41 +00:00
Yehuda Katz
e124fec5e9 Make toArray an alias for .get(). Closes #3999 2009-07-16 07:31:32 +00:00
John Resig
c5315f6687 Scope 'document' locally (also useful for sandboxing). Patch from Andrea Giammarchi. Fixes bug #4905. 2009-07-15 12:35:57 +00:00
John Resig
fd2a2fed84 Optimized jQuery(Element) to not call jQuery() twice. 2009-07-11 13:44:44 +00:00
Ariel Flesler
c6b9654ea8 jquery core: Closes #2827. jQuery.each iterates over functions 2009-06-20 15:51:19 +00:00
John Resig
a0451f162e Did some light reordering of the jQuery definition. Moved window and undefined to exist in intro/outro. 2009-05-20 21:12:08 +00:00
Ariel Flesler
3a80de1c7a jquery core: $() -> $(document) and $(undefined) -> $([]). Removed a duplicated block. 2009-05-03 15:57:25 +00:00
Brandon Aaron
ffd457d456 index now works in reverse when passed a selector or undefined. fixes #3971 2009-05-02 19:22:55 +00:00
John Resig
2764127335 Unified the formatting of core.js. === or !== are used wherever appropriate, syntax has been normalized, braces are added in all cases, and jQuery() now returns an empty set. 2009-03-31 17:35:20 +00:00
Brandon Aaron
f8ef75eb91 remove trailing spaces 2009-03-23 01:55:17 +00:00
Brandon Aaron
7c04a64016 breaking jquery out into smaller modules. added attributes.js, manipulation.js, and traversing.js 2009-03-18 21:15:38 +00:00
Brandon Aaron
ace13387c8 fix for #4074, pass context to jQuery.clean for jQuery.clone 2009-03-18 02:48:32 +00:00
Brandon Aaron
e73990a566 fix for #3688, setting type attribute on button causes IE to throw error 2009-03-17 22:27:25 +00:00
Brandon Aaron
aabf635cfe using parseFloat for offset and position methods and removed num helper method 2009-03-17 21:07:11 +00:00
John Resig
26731d475b Backed out commit [6260], was causing too many problems. We'll have to bite the bullet and assume that the incoming result set has array methods. Un-fixes jQuery bug #4250. 2009-03-17 20:39:29 +00:00
Ariel Flesler
ece001f139 jquery core: Fixed a typo in a comment, closes #4294. 2009-03-05 13:36:12 +00:00
John Resig
f1f5cd9f6a Simplified the structure of the .css() and .attr() methods (reducing the number of calls). Need to optimize $.css/$.curCSS/$.attr still. Fixes #4269. 2009-02-28 20:23:48 +00:00
John Resig
58235cc38e Removed the need for the results set to have array methods. Resolves jQuery bug #4250. 2009-02-25 18:41:29 +00:00
John Resig
f094c803de Made some changes to how .find() works, inlined the duplicate check - should change other methods to act similarly. Goes towards fixing #4240. 2009-02-25 18:29:18 +00:00
John Resig
4bbb70b4eb Simplified the isXML function, no need to use recursion. 2009-02-25 15:37:09 +00:00
John Resig
85e0945718 Cut down on some more function calls for jQuery(...). Everything points back to the same root jQuery(document) object now. Going towards ticket #4240. 2009-02-25 14:23:25 +00:00
John Resig
041fd5f2b5 Reduced the number of function calls required for .find() (single element root), optimized some calls to jQuery() as well. Goes towards fixing #4240. 2009-02-25 04:57:00 +00:00
John Resig
cb3f842c88 Overhauled the .remove() and .empty() methods to be much more efficient. Fixes bug #4222. 2009-02-23 16:32:45 +00:00
John Resig
a37ca9e905 Made sure that .remove now uses multiFilter. Fixes bug #4205. 2009-02-20 19:45:29 +00:00
John Resig
75a973da35 Made it so that appendTo, etc. return the inserted elements (thus using pushStack, as well). Fixes bugs #3966 and #4182. 2009-02-18 16:29:43 +00:00
John Resig
3e46bce751 A speedup for .remove() (which also speeds up .html()). Fixes #4178. 2009-02-18 02:40:55 +00:00
John Resig
87b3ea4bc9 Added some extra methods for making result set merging easier. 2009-02-15 18:09:34 +00:00
John Resig
6f4b08cdf9 Added support for sorting in Safari - when querySelectorAll isn't able to be used. 2009-02-14 18:10:45 +00:00
John Resig
d75c899fe7 Duplication checks are now handled directly in Sizzle, no need to do extra work in .find(). 2009-02-14 17:25:33 +00:00
John Resig
848c45ea17 Added some significant speed-ups to height/width checks, thanks to some code and investigation by Mike Helgeson. Fixes #3082. 2009-02-13 22:58:57 +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
136a459f4c Optimized the clean() code to no longer use .trim() (speeds up working against long HTML in IE). Fixes #4037. 2009-02-09 15:41:50 +00:00
John Resig
6b938e1c16 Removed use of .trim() in globalEval, fixes #4036. 2009-02-09 15:35:33 +00:00
John Resig
ce90accc58 Reworked the .clone() function in IE. Fixes jQuery bugs #3500 (jQuery expandos were causing extra elements to appear from using .html() cloning), #3254 (Mis-match in clone result length causes problem), and #2845 (Cloning an <object/> causes exceptions to be thrown). 2009-02-09 14:48:15 +00:00
John Resig
cd28922b78 Made sure that .removeClass(null) doesn't throw an exception. Fixes #3847. 2009-01-20 17:33:25 +00:00
John Resig
28a1f02223 Re-worked the logic for where .selector and .context are added for ID selectors (especially ones that aren't found). Fixes jQuery bug #3833. 2009-01-20 16:00:48 +00:00
John Resig
04977b8ea2 Brought the logic for handling isXMLDoc over from Sizzle. 2009-01-19 23:17:30 +00:00
John Resig
96152559e0 Landing a fix for non-link anchor tabIndex (from scott.gonzalez). Fixes ticket #3916. 2009-01-19 21:40:23 +00:00
John Resig
ea78377760 Only try to wrap the element if it's not disconnected, fixed #3828. 2009-01-12 14:07:14 +00:00
John Resig
0c97178553 Fixed an issue with parentNode being accessed in attr() on disconnected DOM elements. 2009-01-12 14:00:35 +00:00
John Resig
1eae1541b8 Made a note about the push method. 2009-01-12 00:24:16 +00:00
John Resig
fa615bedd4 Made the case specific of the type attribute. 2009-01-11 21:22:37 +00:00
John Resig
73ff49ac9a Prevented non-script <script> blocks from executing, fixing #3733. 2009-01-11 19:33:01 +00:00
John Resig
7346a476cc Fixed boxModel support - is now computed with feature detection, rather than sniffing. 2009-01-11 16:17:20 +00:00
John Resig
0066ba3f82 .closest() with positional selectors wasn't worked as expected. 2009-01-10 20:30:03 +00:00
John Resig
29bf601f34 Fixed an issue with script nodes being removed incorrectly, fixes #3737. 2009-01-10 01:07:59 +00:00
John Resig
c6f189ac73 Selector state wasn't being passed along on a cloned jQuery object. 2009-01-08 21:41:58 +00:00
Scott González
49d0d5b7a3 Fixed tabindex normalization so that elements that natively support tabbing, but don't have a tabindex explicitly set return 0 instead of undefined.
Removed jQuery.support.tabindex since we're only normalizing non-XML right now and all browsers support tabIndex for HTML documents.
2009-01-07 14:36:30 +00:00
John Resig
d8706c5ac9 Landed a number of improvements to the selector engine. Results are auto-merged onto the jQuery
object, class filtering is now done inline, and not filtering is more efficient.
2009-01-07 00:13:57 +00:00
John Resig
cc70e03ec7 Made the .unqiue() within .find() optional (speeds up calls). 2009-01-06 16:17:50 +00:00
John Resig
1822939000 Switched back to the old style of running embedded scripts (users who have duplicate runs will
have to deal with it another way).
2009-01-05 22:58:02 +00:00
John Resig
ebd9205fdb Make sure that if no ownerDocument is available that we fall back to the node itself (likely the document). 2009-01-05 19:22:25 +00:00
John Resig
122b672f70 Landed cross-browser support for tabIndex, by Scott, closes ticket #3649. 2009-01-05 17:34:42 +00:00
John Resig
192d6cd4a3 Moved the copyright to the intro file, added a ! so that it passes through YUIMin untouched, and changed the Date and Revision so that they're now generated automatically based upon all of jQuery rather than just the core file. 2009-01-04 23:34:18 +00:00
Ariel Flesler
83be3dca69 jquery core: Misc file size optimizations. 2009-01-04 22:25:46 +00:00
Ariel Flesler
0eaead0b91 jquery core: Allowing whitespaces within the [6026] addition. 2009-01-04 21:09:03 +00:00
John Resig
434b87b8a2 Moved from the old JSMin to using YUIMin for compressing the jQuery source. Additionally landed some improvements from #3770 which dramatically reduce the filesize. The final minifed + gzipped size of jQuery went from 19817 bytes to 18063 bytes. 2009-01-04 15:29:27 +00:00
John Resig
c0294278db Landed a proper fix for #3255 - which involves doing createElement instead of going through the normal clean method. 2009-01-03 00:51:07 +00:00
John Resig
cff37cc835 Hid an issue where Safari through an exception when a colgroup was created in jQuery.clean. Not completely sure what the cause is, yet. 2009-01-03 00:19:02 +00:00
John Resig
6a3d1a1e28 Fixed an issue with .not("#foo, bar") not working correctly, closes #3757. 2008-12-31 19:21:24 +00:00
Ariel Flesler
4afa608351 jquery data: Closes #3539. Exposed jQuery.queue. Moved all the data and queue functions to their own module. Made the dequeue function more generic(designed to be used on functions). Closes #3748. Reverted a previous modification. 2008-12-30 02:31:26 +00:00
Ariel Flesler
d37aeceb69 jquery core: Removed an orphaned line. Thanks mose. 2008-12-27 18:21:54 +00:00
Ariel Flesler
51428a3c9e jquery core: Fixed a global var leak introduced by me on a recent commit. 2008-12-26 15:48:04 +00:00
Ariel Flesler
8cd50a398d jquery core: Closes #3737. Fixed a possible null dereference. 2008-12-25 21:20:41 +00:00
Ariel Flesler
0a8f96ac3d jquery core: Closes #1681. jQuery.fn.toggleClass can accept a boolean argument indicating add/remove. 2008-12-25 20:12:18 +00:00
Ariel Flesler
0e3e470edc jquery core: Closes #3255. The div used in jQuery.clean is emptied in the end. Cleaning the parentNode's properties of the elements. 2008-12-25 19:47:56 +00:00
Ariel Flesler
4b25b147ab jquery core: Closes #3641. jQuery.merge stopped looping once a 0 was found. 2008-12-25 19:25:30 +00:00
Ariel Flesler
5459180728 jquery core: Closes #3666. Removed old code. 2008-12-25 17:37:58 +00:00
John Resig
6b09032864 Added support for the new .closest() method (very useful for event delegation). 2008-12-22 00:52:53 +00:00
John Resig
b850ab2b8e Added the new jQuery.support object and removed all uses of jQuery.browser from within jQuery itself (while simultaneously deprecating the use of jQuery.browser). 2008-12-21 21:22:44 +00:00
John Resig
8ee1708ea9 Fixed an issue with domManip where the incorrect document was being used to create the document fragment. 2008-12-21 21:18:40 +00:00
John Resig
c85243dfc4 Landing the new Sizzle selector engine. There'll need to be some later tweaks (to make the tests a little more pragmatic - especially for document order elements). But it appears to be passing well and that's enough. Closes #3563. 2008-12-20 01:19:17 +00:00
John Resig
18ee5a93a2 Fixed an issue with domManip where the incorrect clone fragments were being used for elements. 2008-12-19 06:58:18 +00:00
John Resig
62bd7e6817 Fixed an issue with how .data() was expecting output (trigger now returns exact output - or null if none is provided, which was tripping it up). 2008-12-19 06:49:03 +00:00
John Resig
132b8de614 Switched to using DOM Fragments in domManip. 2008-12-19 04:37:54 +00:00
John Resig
2875460f63 Added selector path logging (creates a trail that plugins can use). 2008-12-19 04:37:10 +00:00
John Resig
0935f4a0b1 Removing remaining strict-mode warnings. 2008-12-19 04:36:28 +00:00
Ariel Flesler
475f89b651 testrunner: adding tests for $.fn.hasClass. 2008-12-16 00:02:17 +00:00
John Resig
615a4ce1b4 IE doesn't care for boolean checks of .createElement - reverted back to using typeof instead. 2008-11-29 01:14:02 +00:00
John Resig
ab551c2b14 Standardized the type checks across core. isFunction and isArray now use Object.prototype.toString to verify the type, .constructor use was removed in favor of typeof, typeof checks now use ===, undefined checks use === undefined. All of this is outlined in the new style guidelines: http://docs.jquery.com/JQuery_Core_Style_Guidelines#Type_Checks. Fixes bug #3618. 2008-11-17 16:32:05 +00:00
Paul Bakaus
b64d60940d core: height() method wasn't working reliably in Opera - rather than returning the actual client height when called on window, it returned the document's height through document.body.clientHeight. The right value to work with is html.clientHeight 2008-11-07 15:44:33 +00:00
Ariel Flesler
325755d4b3 jquery core: closes #3541. Added isArray. 2008-10-29 02:01:22 +00:00
Ariel Flesler
77cfd696ec jquery core: forgot to remove a deprecated warning. 2008-10-29 01:15:47 +00:00