Commit Graph

451 Commits

Author SHA1 Message Date
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
Ariel Flesler
61784e1581 jquery core: improves #3248. Functions are supported by isFunction. 2008-10-29 01:12:27 +00:00
Ariel Flesler
63bfe1ded1 jquery core: closes #3485. Fixing a memory leak on IE. 2008-10-18 22:22:08 +00:00
Ariel Flesler
b69dc841ff jquery core: fix for [5828]. Put 'function' instead of 'string'. 2008-08-14 14:03:05 +00:00
Ariel Flesler
ec146fc73d jquery core: closes #3154. makeArray uses typeof instead of attribute sniffing for strings. 2008-08-13 18:16:14 +00:00
Ariel Flesler
1023cf1d72 jquery core: closes #3248, #3079, #3026, #3176, #3202, #3129. jQuery.makeArray doesn't support functions anymore. Voiding the conflict with Scriptaculous 1.7.x. 2008-08-12 19:34:30 +00:00
Ariel Flesler
db076b06f5 jquery core: closes #3241. The 'length' property isn't set to jQuery's prototype anymore. 2008-08-11 00:54:05 +00:00
Ariel Flesler
fc38ead4dc jquery core: small size optimizations for val(). 2008-08-10 23:59:01 +00:00
Ariel Flesler
a27b5d0468 jquery core: closes #2652. val() supports option elements, also simplified the code. 2008-07-23 17:00:32 +00:00
Ariel Flesler
69212c501f jquery core: closes #2968. Simplified isFunction, dropping support for DOM methods and functions like alert() on IE. 2008-07-23 16:18:05 +00:00
Ariel Flesler
43c4b64f32 jquery core: closes #3179. Fallback browser version for non supported browsers. 2008-07-23 15:21:27 +00:00
Ariel Flesler
a33f85e691 jquery core: closes #3159. remove() would unbind form.elements instead of a form. 2008-07-15 15:58:01 +00:00
Ariel Flesler
e132d6bc53 jquery core: Closes #3033. Removed support for .. selector on jQuery.find. 2008-07-09 19:23:19 +00:00
Ariel Flesler
96e4006b74 jquery core: closes #3102, #3051. $.fn.eq() accepts a stringified integer. 2008-06-30 16:17:44 +00:00
Paul Bakaus
d1210a5a88 core: revertd last change, breaks width/height logic in css() 2008-06-24 16:16:15 +00:00
Paul Bakaus
201f1b66cc core: changed jQuery.css to num (uses curCSS) in the height/width methods with dramatically increases performance for height/width 2008-06-24 15:55:50 +00:00
Ariel Flesler
5e50079b14 jquery core: closes #3053. clean() wasn't parsing 0's. So html( 0 ) was failing failing. 2008-06-17 19:57:42 +00:00
Ariel Flesler
2f2602ed15 jquery core: closes #3034. Ids with '-' weren't handled by quickExpr. 2008-06-13 18:42:54 +00:00
Ariel Flesler
e87d2c7a58 jquery core: adding rowSpan to jQuery.props. 2008-05-27 19:17:26 +00:00
Ariel Flesler
cff5323a1d jquery core: closes #2930. Normalizing attr() to return undefined, even when getting DOM attributes. 2008-05-24 18:09:21 +00:00
Ariel Flesler
7f27816d30 jquery core: casting numbers received by val() to string. 2008-05-24 17:57:45 +00:00
Ariel Flesler
ec075266e9 jquery core: saving some bytes and fixing indentation inside jQuery.prop. 2008-05-23 00:54:59 +00:00
Ariel Flesler
d44c5025c4 jquery core: Closes #2709, avoiding a bug on IE 6 when using globalEval and a base node is found. 2008-05-16 18:37:11 +00:00
Ariel Flesler
3a7b09e5c7 jquery core: saving some bytes in $.fn.val by using $.makeArray. 2008-05-16 18:32:03 +00:00
Ariel Flesler
da76a723e1 jquery core: updating a comment, thanks to Scott for spotting it. 2008-05-16 16:41:12 +00:00
Ariel Flesler
9a7652260b jquery core: SHOULD fix #2802. Caching document.defaultView, instead of defaultView.getComputedStyle as it fails on Safari 2. 2008-05-15 14:45:29 +00:00
Ariel Flesler
5a92ec263d jquery dimensions & offset: moving the local function 'num' to core, so it can be safely used by both modules. 2008-05-15 12:53:07 +00:00
Ariel Flesler
b13a961ff5 jquery core: closes #1480, isFunction is even tougher. 2008-05-14 20:10:39 +00:00
Ariel Flesler
69f72761fa jquery core: fixed deep extend of objects. Closes #1562 & #2820. 2008-05-14 19:45:31 +00:00
Ariel Flesler
28182b4320 Closes #2510 2008-05-13 02:20:08 +00:00
Ariel Flesler
3f5ff3097c jquery: removing unnecessary trailing and leading spaces & tabs. 2008-05-13 01:45:58 +00:00
Ariel Flesler
70b5e670ca jquery core: don't let .attr() set style for xml. 2008-05-13 00:42:12 +00:00
Ariel Flesler
e9b2781d30 jquery core: #2548, #2170, #2188, #2099, #1170, #2558, #2521, #2119, #1271, #2453, #2537.
mass refactoring of $.attr (#2548)

* Changes
- undefined was returned for falsy values.
- expando attributes are used when possible.
- one $.isXmlDoc instead of 2.
- $.attr( style, ... ) goes thru less useless checks.
- reduced code size of recurrent accessed variables/checks.
- $.props doesn't need redundant sets of key value anymore.
- added cellSpacing to $.props (#2521)
2008-05-13 00:37:30 +00:00
Ariel Flesler
440c08d768 jquery core: Applied #1318 to jQuery.grep 2008-05-12 01:21:50 +00:00
Ariel Flesler
1762dc24d6 jquery core: declared undefined locally, to speed up references, and allow munging all their names. 2008-05-11 20:59:24 +00:00
Ariel Flesler
487567e82f jquery core: closes #2811, $.fn.add now calls $.unique internally, also it was failing for array-like f.e: window. 2008-05-08 17:08:59 +00:00
Ariel Flesler
858d56fc8e jquery core: closes #2771
$.inArray now makes a === check because of IE.
$.inArray is used in $.fn.index, this is shorter, and breaks the loop when possible.
$.fn.index can receive a jquery object, and the first element is used
2008-05-08 16:14:49 +00:00
Ariel Flesler
4d41c71d3d jquery core: Reverting the changes added at [5480] 2008-05-07 00:07:44 +00:00
Ariel Flesler
a584f82aef jquery core: makeArray was parsing forms into array of elements. 2008-05-06 23:28:21 +00:00
Ariel Flesler
69d9abff2c jquery core: removing needless 'else' and 'new' in $.fn.init. 2008-05-06 22:36:30 +00:00
Ariel Flesler
e5e24bd33f jquery core: enhancements to jquery.map, closes #2803 2008-05-06 14:54:53 +00:00
Ariel Flesler
789ad4f769 jquery core: small code reduction. 2008-05-06 01:29:13 +00:00
Ariel Flesler
eeab071790 jquery core: code reduction at $.each and $.curCSS. 2008-05-06 00:54:59 +00:00
Scott González
f8698395ac core: Fixed #2605: .data() now accepts null as a value. 2008-05-03 01:51:55 +00:00
Scott González
ad3c49d1b6 core: Fixed #2605: .data() now accepts null as a value. 2008-05-03 01:39:27 +00:00
Scott González
35c68b4578 core: Fixed #2600: jQuery.extend no longer skips over null properties. 2008-05-02 19:49:41 +00:00
Ariel Flesler
cd455eeba7 jquery core: extend() now supports deep + extending jquery itself
cached some vars and it proved to be faster.
2008-04-30 00:09:55 +00:00
Ariel Flesler
17b1e407d1 mainly made the code shorter:
- removed some needless if's
- replace multiple "var x" for one, comma separated declaration.
- added a local fn called now() for the (new Date)s
- fixed the indentation of a block, and a typo in a comment.
- used fn instead of prototype where possible
- jquery fx: exposed the speeds hash as jQuery.fx.speeds.

Also fixed (again) line endings
2008-04-29 23:34:50 +00:00
Ariel Flesler
e9c620794f jquery core: in $.makeArray, improved array-like detection, Safari reports nodelists as 'function', so I got back to attribute sniffing. 2008-04-29 20:58:22 +00:00
Ariel Flesler
508b1e2432 jquery core: fixed makeArray to recognize the window (has length)
test runner: updated the tests for makeArray
2008-04-25 03:48:07 +00:00
Ariel Flesler
25f9974cee jquery core: simplified the code using the new jQuery.makeArray from [5314] where possible. 2008-04-24 21:46:22 +00:00
Jörn Zaefferer
f8e5fd6fef jquery core: Patch from #2619 applied, making makeArray more flexible and faster; removed hint to ticket from (previously failing) test 2008-04-24 21:23:36 +00:00
Brandon Aaron
3e285bd60d Small optimization to jQuery.curCSS (thanks Ariel Flesler) 2008-04-21 22:54:25 +00:00
Sean Catchpole
4515aba79c $.extend deep now copies children's children, ect... 2008-04-08 16:40:03 +00:00
John Resig
a19a123d89 Fixed issue with typeof check - "array" isn't a valid type. 2008-02-17 15:05:55 +00:00
John Resig
f43516f209 Landed a fix for bug #2037. 2008-02-06 05:18:25 +00:00
John Resig
b0c7df65d0 You can now overwrite values returned from .data() with .bind("getData") - returning a value will override any bound value on that element. 2008-02-03 18:43:04 +00:00
John Resig
4a11e6d70b Tweaked the .data() event triggering - it now triggers a single 'setData' event, passing in a key value pair of what was changed. 2008-02-03 17:56:21 +00:00
John Resig
77da94552e Added $().data(), $().removeData(), and .bind("click!"). .data() and .removeData() handle namespaced data, .data() triggers a "set-KEY" event on all modified elements, and .bind("click!") only triggers a click (and no namespaced events). 2008-02-03 04:05:24 +00:00
John Resig
25c76232c6 Updated the years on the licensing. 2008-02-01 23:23:11 +00:00
John Resig
5da2e98cb3 De-eval'd selectors and the various DOM methods (will marginally help our speed and make us more compatible with projects like Caja and Adobe AIR). Left a selector eval in for backwards compatibility support of selector plugins. 2008-01-26 00:26:28 +00:00
David Serduke
1faed11e3c Fix #2184 by using the jQuery.clean() function instead of a direct innerHTML assignment in the clone() function for IE. 2008-01-23 03:54:23 +00:00
David Serduke
0cd307ec10 Changing end of line from CRLF to just LF like the rest of the source files. 2008-01-14 22:30:48 +00:00
John Resig
c39bd07cc9 Added support for breaking in an object loop (Bug #2111). 2008-01-14 20:06:34 +00:00
John Resig
6e739fd2ba Added a check to make sure that .style exists before trying to access it (Bug #2105). 2008-01-14 19:17:35 +00:00
Jörn Zaefferer
c27cbdc477 reverted change for #2114 2008-01-14 09:42:53 +00:00
Jörn Zaefferer
2fa855601e fix for #2114; refactored tests for bind() to highlight failing select-change-test 2008-01-14 09:33:08 +00:00
John Resig
9bcd2b370b Tweaked comment for isFunction. 2008-01-12 23:03:39 +00:00
David Serduke
05930c5a0d Fixed #2084 by added embed to the list of elements where it is ok to have self closing xhtml. 2007-12-21 05:47:33 +00:00
David Serduke
50c40add5a Fixed a couple problems found in the test suite. First, IE doesn't like it when text nodes were trying to duplicate their events in clone, so don't do text nodes (that shouldn't have events anyway). Also the fx module was freezing from a recent update that wasn't quite finished. 2007-12-20 20:40:20 +00:00
John Resig
3261544c38 Fixed #2027 - make sure that cloned elements (within appendTo, etc.) have their events cloned by default. 2007-12-20 13:36:56 +00:00
Brandon Aaron
b32ec31d89 Insure width/height do not return a negative number. 2007-12-19 18:23:46 +00:00
David Serduke
7ef40fd199 Fixed #2076 where .val() could return an array instead of undefined when the jquery object was empty. The bug was created during the .val() refactoring for the javascript strict FF ticket. 2007-12-18 17:19:33 +00:00
Brandon Aaron
fc51e14b81 width and height methods are now working properly 2007-12-18 03:53:09 +00:00
David Serduke
24e036c7c8 Fixed #2070 by adding a test for !nodeType to isArrayLike so DOM elements like SELECT are not considered array-like (even though they really are). 2007-12-17 21:02:05 +00:00
David Serduke
90b25efa6c Fixed #2062 by adding a check to see if the selector is array-like in .not() before testing it as an array. Otherwise it does a straight comparison during the filter test. 2007-12-17 16:54:44 +00:00
David Serduke
6496e4d9c4 Fixed #2037 where Opera would mis-state the value of 'display' after an innerHTML was done in some cases. 2007-12-17 01:58:05 +00:00
David Serduke
feb9051c0e Fixed #1781 for warnings created on load by FF javascript.options.strict == true. 2007-12-16 01:03:50 +00:00
John Resig
7120b56caa Added some improvements to changes made in [4143] for #1854. 2007-12-13 22:58:59 +00:00
David Serduke
da33a981c6 Fixed #1854 by using wizzud's suggestion. The only real difference is the code is only called when there is more than a single selector. So there should be no speed decrease in the current working cases. Only additional functionality for cases that used to fail. 2007-12-13 22:24:59 +00:00
Brandon Aaron
3e3b86c7a7 Getting the width and height of the document now returns the correct value in all browsers. It even works around the scrollWidth == offsetWidth bug in Firefox thanks to wizzud. 2007-12-13 03:46:48 +00:00
David Serduke
279f77e960 Fixed a bug in clone where it wouldn't work on an XML node in IE. Also added unit test for it. 2007-12-12 01:32:35 +00:00
Brandon Aaron
227f8b2514 Greatly reduced the complexity of the width/height methods. This also fixes #2009, #1870, #1796, #1843, #1839, #1818, #1613, #1415 and #1629 2007-12-11 04:40:54 +00:00
David Serduke
9ea8017f86 Fixed #1959 by postponing ALL script evaluations till the html insertion is done. Before the code would immediately execute any scripts that weren't in subelements if no subelements prior had scripts in them (i.e. once any script was postponed they all were). This could cause inconsistent behavior. Since, at this time, we have to postpone some scripts it makes more sense to postpone them all. 2007-12-10 19:04:59 +00:00
John Resig
f97f77c034 Added a change that triples the speed of all uses of $(...). For example $(DOMElement) was 38ms, is now 13ms. 2007-12-10 01:45:03 +00:00
Brandon Aaron
ccf055033a Fixed clone so that it now properly copies changes to the innerHTML in IE. Unfortunately, IE stores some modifications to some attributes only as a property and they are still not copied properly. This is documented in ticket #1836. 2007-12-08 23:03:10 +00:00
David Serduke
ffbedf0262 Fixed #1039 and #1733 by going through the core API and making them text node and comment node safe. 2007-12-07 01:52:21 +00:00
Jörn Zaefferer
d44e9451f7 Fix for #2002 2007-12-06 19:51:00 +00:00
David Serduke
1be5582039 Fixed #1419 where IE failed with .text() on an XML node. This is part of a series of tickets including #1264 where the context of the DOM manipulation was a problem in xml and iframe documents. 2007-12-05 05:01:46 +00:00
David Serduke
74a132d944 Fixed #1264. If you read the bug there were many proposed changes. As it turned out most of them had already been implemented. The last ones necessary were in .domManip() with when a <table> was 'this' and for .text(). Adding these last changes seems to make dom and text manipulation in IE frames possible. Unit test cases were added as well.
In addition "submit.gif" was removed from the test suite index.html since it didn't exist.
2007-12-05 00:26:13 +00:00
David Serduke
76e3a90153 Fixed #1763 by checking to see if .createElement() is available on the context and if isn't default to other contexts. 2007-12-04 19:37:03 +00:00
David Serduke
d938c6bbd6 Fixed #1438 where a filter could be set in IE but not have opacity in it. The JS error was fixed by checking to make sure 'opacity=' is in the filter before seeing what its value is. 2007-12-04 18:15:27 +00:00
David Serduke
37902e86b1 Fixed a problem with changeset [3841] where a function could no longer be .extend()-ed. 2007-11-30 08:39:49 +00:00
David Serduke
aca1cc3677 Removed comments and code related to Safari being unable to do a sync global eval. With the new globalEval() code that should no longer be a problem. 2007-11-30 02:42:48 +00:00
David Serduke
b6d70a7ce3 Back out one of the changes from the previous commit that wasn't necessary to fix the bug and might not be desired. 2007-11-28 23:53:54 +00:00
David Serduke
95c0265486 Fixed #1908 by testing to make sure it isn't null before checking the nodeType. 2007-11-28 23:42:16 +00:00
David Serduke
ed7608d8ee Fixed #1070 by converting all setAttribute() values to a string which is what all browsers but IE did. This will bring IE in line with the others and fix the bug. 2007-11-28 23:13:59 +00:00
David Serduke
5c6c99361f Fixed #1714 by adding a default empty string if the value is falsey. 2007-11-28 16:38:34 +00:00
David Serduke
0a755f6ab3 Fixed #1599 as Brandon suggested to ignore negative values to width and height css. The fix itself is slightly different as it was moved to .css() instead of staying in .attr() like in his patch. I decided there was less chance of incorrect behavior (like if someone had an XML file with a width attribute that could be negative). Also took out some unneeded white space while I was in there. 2007-11-28 01:01:49 +00:00
David Serduke
2ccd2cb36b Fixed #1942 but running jQuery.css() before jQuery.curCSS(). This way when the property is width or height it gets the values through calculation instead of just css first. This appears to fix the problem in Opera without hurting any of the other browsers. 2007-11-27 23:58:07 +00:00
John Resig
1a2fdafd38 Added a quick shortcut to improve the speed of $(DOMElement) by over 2x. 2007-11-27 01:03:49 +00:00
Brandon Aaron
5e99807271 Fix for #1944. Added nodeName and tagName to jQuery.props and tests for maxlength, defaultValue, selectedIndex, tagName and nodeName. 2007-11-19 16:07:44 +00:00
David Serduke
264ffbc73b Fixed #1074 where .html() was incorrectly changing the selected value of an option. 2007-11-17 22:09:51 +00:00
David Serduke
32b3ac4f06 Changed core.js from CRLF to LF eol style to match the rest of the source files. This was the only change for this changeset. To see it try: 'svn diff -x --ignore-eol-style -r 3841:3842' and there will be no diffs. (actual revision numbers are an educated guess) 2007-11-17 04:36:50 +00:00
David Serduke
bf8f3fe094 Fix #1907 where the never-ending loop prevention used a coersion comparison which sometimes dropped values incorrectly. Also fixed a bug where on deep copies the target copied over itself (i = 2 addition). Last made code handle the case when a property might have a string in it that should be overwritten by an object. 2007-11-17 04:25:22 +00:00
David Serduke
e2ef3df86d Fixed #1095 bug where radio buttons became unchecked during show(). Also added unit test and had to fix a selector test that was broken by the new testing div in test/index.html. Last made some whitespace changes. 2007-11-16 23:39:23 +00:00
Brandon Aaron
d5cb977a08 Fix for #1893 2007-11-14 04:51:53 +00:00
David Serduke
a613a70fdb Added a check to make sure a parent node exists in call remove() to avoid errors as seen in bug #1742. 2007-11-05 18:49:00 +00:00
John Resig
1ac9d6fbee Added a fix for .noConflict(true) not reverting properly. Also added unit tests for noConflict. 2007-10-20 22:04:06 +00:00
John Resig
5736e8d90d Ok, self[...] was BS, switching to window[...], bug #1748. 2007-10-18 17:25:08 +00:00
John Resig
14b88f6019 Fix for bug #1546 where a deep copy was attempted of DOM elements (which isn't needed). 2007-10-17 23:35:57 +00:00
John Resig
e287007f6a Added a fix for bug #1698, in which injected scripts were executed out of order, in relation to the DOM. 2007-10-17 22:42:12 +00:00
Brandon Aaron
971840f343 Fixed .val(String) for select elements (#1760) [Thanks Sam] 2007-10-12 12:51:07 +00:00
Jörn Zaefferer
0f5c1d15e9 Fix for #1779 2007-10-12 09:46:48 +00:00
Brandon Aaron
92aac3abd6 Fixes memory leaks relating to events in IE with page unload and with jQuery methods remove, html and empty (#1610, #1618, #1697 and #1731). Also re-worked variable names to be more consistent with the core. 2007-10-06 17:04:20 +00:00
Brandon Aaron
bb998f2518 Fix regression in add and append in IE after revision 3463 2007-10-06 16:45:20 +00:00
John Resig
ad1cef94bf A fix for bug #1443, where globalEval occurred asynchronously in Safari 2, provided by Andrea Giammarchi. 2007-10-01 20:15:20 +00:00
John Resig
92a9e73bbe Completely overhauled the syntax of core - re-worked variable names, formatting, comments, and some structure. 2007-09-23 16:55:19 +00:00
Brandon Aaron
d5999be9ae Fixed #1474, setting selectedIndex 2007-09-18 14:35:41 +00:00
Brandon Aaron
aee81963ba Use document.compatMode for quirks test in width/height method 2007-09-18 12:38:15 +00:00
Brandon Aaron
537d7ca869 Fix width/height to work properly on window/document 2007-09-17 19:14:05 +00:00
John Resig
e0c6e4ef98 Added fix for bug #1567 - uppercase nodeName test in .add(). 2007-09-15 03:44:44 +00:00
John Resig
3dabd7ec30 Added .eq(Number) back in - I'm convinced that it's more useful than the .slice() replacement. lt/gt are still gone, though. 2007-09-15 03:08:46 +00:00
John Resig
9c2c47d7c0 etooled the jQuery constructor, makes it work better for embedding (Bug #1585). Also took the opportunity to do some renaming in the constructor and init. 2007-09-15 02:24:44 +00:00
John Resig
606b863eda Fixed bug #1594, #1565, #1598 - all of which were concerning the improper execution of embedded scripts in IE and Safari. 2007-09-15 02:16:29 +00:00
Brandon Aaron
500ff12d5d fix clone(true) for IE 2007-09-13 16:45:53 +00:00
John Resig
6476b15f1a Made the expando code attach properties to an anonymous object, as opposed to the global window object, and fixed a bug where .removeAttribute() tried to fire even if it didn't exist. 2007-09-10 18:39:16 +00:00
John Resig
f38251b2ce Fixed spelling mistake. 2007-09-09 23:17:30 +00:00
John Resig
cd6ec6e157 Added an extra check for removing a named cache property - calling it when it didn't exist caused an exception. 2007-09-09 23:08:21 +00:00
John Resig
139b03af7c Landing a version of $(document)/$(window) .width()/.height(). It won't win any awards, but it'll hold us over for this release. 2007-09-09 22:59:41 +00:00
John Resig
052aa1445a Added .prevAll() and .nextAll() functionality. 2007-09-09 21:34:37 +00:00
John Resig
b59c94d5c2 So, apparently, I never committed the second half of the new field value code. This allows you to set values on groups of checkboxes, radio buttons, and selects. 2007-09-09 19:00:56 +00:00
John Resig
3a4e1233aa Landing the new expando management code. Completely overhauls how data is associated with elements.
Plugins will be most interested in:
- jQuery.data(elem) -> Unique ID for the element
- jQuery.data(elem, name) -> Named data store for the element
- jQuery.data(elem, name, value) -> Saves a value to the named data store
- jQuery.removeData(elem) -> Remove the expando and the complete data store
- jQuery.removeData(elem, name) -> Removes just this one named data store

jQuery's .remove() and .empty() automatically clean up after themselves. Once an element leaves a DOM document their events are no longer intact. Thus, statements like so:
{{{
  $("#foo").remove().appendTo("#bar");
}}}
should be written like so:
{{{
  $("#foo").appendTo("#bar");
}}}
in order to avoid losing the bound events.
2007-09-08 23:31:23 +00:00
John Resig
2929f8aa67 Landing the .clone() rewrite by Brandon (also includes the new event cloning functionality .clone(true)). 2007-09-08 16:19:34 +00:00
John Resig
d2f82aba26 Added .hasClass() (Simply just passes through to .is()). 2007-09-08 13:49:42 +00:00