Commit Graph

76 Commits (master)

Author SHA1 Message Date
rwldrn 0742056645 Landing pull request 403. Check for both camelized and hyphenated data property names; Fixes #9301.
More Details:
 - https://github.com/jquery/jquery/pull/403
 - http://bugs.jquery.com/ticket/9301
2011-06-06 20:18:36 -04:00
John Resig a5e407cafb Make sure that data properties with hyphens are always accessed/set using camelCase. Fixes #9124. 2011-05-10 11:56:42 -04:00
timmywil c864455ccf Global found in dataAttr function 2011-05-06 14:54:47 -04:00
Alexis Abril 8c318bf414 Fixes #7328. When getting data- attributes, after-cap any embedded dashes per the W3C HTML5 spec. 2011-04-10 15:17:00 -04:00
Dave Methvin b9f5e2b974 Only perpetrate the .toJSON hack on data caches when they are attached to a plain Javascript object. Part of the continuing saga of #8108. 2011-02-17 17:09:56 +01:00
Colin Snover 2cc03a86fc Update jQuery.data to use jQuery.noop for toJSON hack instead of an additional superfluous function. 2011-02-14 16:30:18 -06:00
Colin Snover 2ed81708bd Hide metadata when serializing JS objects using JSON.stringify via a toJSON hack. Fixes #8108. 2011-02-14 16:22:23 -06:00
Colin Snover d92dc2902c Revert portions of 7acb141ed7 that attempt to use a function to hide jQuery metadata from JSON.stringify since this does not work reliably cross-browser (fails in Fx3.5, O11, Saf4). 2011-02-08 12:13:27 -06:00
Colin Snover 7acb141ed7 Update $.data to use a function instead of an object when attaching to JS objects in order to hide attached metadata from JSON.stringify. Remove event.js code that was doing this before specifically for events, which is now redundant. Fixes #8108. 1.5-stable 2011-02-07 10:48:38 -06:00
Colin Snover 57cc182a40 Introduce a temporary hack to allow jQuery.fn.data("events") to continue to work. This will be going away in 1.6. More information will be available in the 1.5 release notes. 2011-01-17 15:22:49 -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
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
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 faefbb1ad0 Fix #7717 and #7165. Thanks to dmethvin and iliakan for their help fixing these issues. 2010-12-19 15:33:53 -06:00
Colin Snover 11e52bdaea Only try to get data attributes for a jQuery-wrapped object if it is actually an Element node. Fixes #7524. 2010-12-03 01:19:39 -06: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 0174518a49 Only need to declare the data once. 2010-10-21 23:18:47 -04:00
John Resig 8a5df39045 Make sure that .data() (no args) returns a list of all the data- properties as well. Also make sure that accessing a data- property via .data() doesn't cause it to change again at a later time (it should be static). Fixes #7222, #7223. 2010-10-17 11:42:53 -04:00
rwldrn a2aefbf3b1 Fixes acceptData defining in the global scope. 2010-10-05 10:32:57 -04:00
Dave Reed cb811c04b0 Using data() on JavaScript objects sets fields directly on the object. Note that events are now a property of a function (to avoid JSON serialization - and only in the case of JavaScript objects, not DOM nodes). Fixes #6807. 2010-09-29 06:46:25 -07:00
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 76db8a9822 Allow data to be bound to Flash objects (but still stopping short of attaching to applets. Fixes #6121. 2010-09-24 16:24:07 -04:00
jeresig 0b4b3ee8a5 Make .data(Object) extend the existing data object. Fixes #6692. 2010-09-22 11:52:32 -04:00
Jacob Wright 626624a19a Fix bug when accessing .data() on an empty set. Return null rather than throwing exception. 2010-09-22 11:38:37 -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 9ad7c21e70 Make sure the data- number has at least one number in it before passing to isNaN. Thanks to @cms in 8ebb9b22df for a heads-up. 2010-09-22 07:34:31 -04:00
jeresig 3a0a352883 Escape RegExp braces to sooth JSLint's temper. 2010-09-21 08:53:34 -04:00
jeresig 8ebb9b22df Switch to using isNaN instead of RegExp for data-. 2010-09-21 08:31:55 -04:00
jeresig e0b24306a8 Handle some additional data- number edge cases. 2010-09-21 08:30:12 -04:00
jeresig 1f8a5e4bbc Make sure that the data- import also supports arrays. 2010-09-21 08:20:31 -04:00
John Resig e7c2d3b45b Added in support for basic JSON object parsing of data- attributes. 2010-09-21 00:51:45 -04:00
John Resig ae9df1412c Make sure that undefined is returned for not found data- attributes, not null. 2010-09-21 00:44:47 -04:00
John Resig d5d4e4df65 Tweaked the data number RegExp some to handle some other edge cases. 2010-09-21 00:38:26 -04:00
jeresig 4a46f3d7fb Fixing the problem with data-* based numbers as mention by @jasonwebster in 20673d7. 2010-09-20 20:08:57 -04:00
John Resig 20673d7e58 Pull data-* attributes into .data(). Original code by Andrée Hasson and Paul Irish. Fixes #6921. 2010-09-20 17:47:41 -04:00
jeresig bca5765502 Make sure that jQuery works even when the individual modules are loaded separately AND jQuery.noConflict(true) is used. Fixes #7011. 2010-09-08 13:54:33 -04:00
John Resig c4b4df4691 Make sure that .data() events don't bubble, per the discussion in 2e10af143b. Fixes #6832. 2010-07-27 13:45:32 -04:00
Dave Reed 2084e01780 Fix for issues discussed in 9faab0b74f. Goes towards fixing #6808. 2010-07-23 11:25:31 -04:00
InfinitiesLoop 266facc08a Ticket 6808. Updated per code review comments by jeresig 2010-07-23 03:52:02 +08:00
InfinitiesLoop 9faab0b74f Ticket #6808. Changes data() so on plain objects, it uses a function to contain the cache ID to avoid it being JSON serialized. 2010-07-23 03:52:01 +08:00
InfinitiesLoop 2e10af143b Ticket #6804. Adds a changeData event. 2010-07-20 10:12:40 +08:00
John Resig 1533bf7c77 Expose jQuery.uuid (use with caution) and make sure the expando property is used in the events module. 2010-04-24 14:16:27 -07:00
jeresig 8effe3a7de Made it so that you no longer need to build jQuery in order to run the test suite (but you'll still need a checkout of QUnit and Sizzle, at least). 2010-03-23 12:12:16 -04:00
jeresig a49e6b6313 Attach data directly to plain objects, no reason to use the central jQuery.cache. Fixes #6189. 2010-02-27 09:49:58 -05:00
jeresig 9e06903a99 Make sure that undefined is always returned for undefined data properties. Fixes #6166. 2010-02-26 12:35:04 -05:00
jeresig a6f3757d50 Found a better detect for deleting an expando, added back in removeAttribute as it does work in IE. 2010-02-13 06:57:58 -05:00
jeresig 9195107dbb Clean up expando removal code - only try to delete the expando from an element if it's possible. 2010-02-13 06:32:20 -05:00