1
0
mirror of https://github.com/DataTables/DataTables.git synced 2024-12-02 14:24:11 +01:00
Commit Graph

573 Commits

Author SHA1 Message Date
Tim Tucker
ce59c7403f Update media/src/core/core.scrolling.js
Tweaks to improve performance
Cache nodes
Restructure to use nextSibling rather than childNodes
(small increase in file size, but may be a slight decrease in minified size)
2012-08-31 16:25:35 -03:00
Allan Jardine
0d47107906 Merge pull request #84 from timtucker/master
Update to docs
2012-08-31 09:46:34 -07:00
Tim Tucker
3cc96cf58f Update media/src/core/core.draw.js
Cache row
Avoid array access to childNodes
Move unique calculation outside of loop
Declare all vars at head of function
Cache a[i] in fnShiftCol
2012-08-31 13:38:51 -03:00
Tim Tucker
37485da480 Update media/src/DataTables.js
Combine closures
2012-08-31 13:08:09 -03:00
Tim Tucker
66de941632 Update media/src/DataTables.js
Wrap with globals to ease minification
Fix check for preventing multiple instantiation
Change formatting
2012-08-31 12:39:28 -03:00
Tim Tucker
87b4055b7a Update media/src/DataTables.js
Add support for AMD-based module loaders (such as requirejs).
Should have no effect when loading normally.
2012-08-31 11:15:19 -03:00
Tim Tucker
6fa5559dc3 Update media/src/core/core.sizing.js
Doc update -- getWidestNode returns node, not string
2012-08-31 11:00:48 -03:00
Tim Tucker
08619a3a21 Update media/js/jquery.dataTables.js
Update doc to reflect that _fnGetWidestNode returns a node, not a string.
2012-08-31 10:48:55 -03:00
Allan Jardine
6855be79f5 Examples: Add <code> CSS markup for examples. 2012-08-30 19:32:31 +01:00
Allan Jardine
c2af41140b Performance: Large improvement in scrolling performance due to rearranging the way that column widths are read and applied to the target table. Rather than merging reading and writing together, we now seperate the reading and writing phases, allowing the browser's rendering engine to optimise the reflow. Props to jlabanca for this modification - 11541 2012-08-30 07:29:50 +01:00
Allan Jardine
9f8d2a632b Moving on to 1.9.4 development 2012-08-22 16:41:52 +01:00
Allan Jardine
34096537c2 Fix: Firefox Windows (not Mac) had an error when calculating if scrolling oversizing was needed or not (_fnBrowserDetect). The result was that the table did not fill the space when y-scrolling was enabled and Firefox Windows was used. Fix is to remove the height on the DT_BrowserTest parent as suggested by randomuser - 11406 2012-08-22 16:39:36 +01:00
Allan Jardine
93774f4d7d Merge branch 'master' of github.com:DataTables/DataTables 2012-08-22 16:39:25 +01:00
Allan Jardine
3c358417e0 Update: Updating to jQuery 1.8.0 2012-08-22 16:38:36 +01:00
Patrick Cook
05201c21c4 Modified destroy method to only restore hidden columns if the table is not
being removed from DOM
2012-08-21 12:43:13 -07:00
Patrick Cook
854612a399 Added fix for memory leak because of potential circular reference 2012-08-15 23:31:14 -07:00
Patrick Cook
f6ffbc7e28 Memory clean up of _that variable 2012-08-15 07:08:48 -07:00
iBiryukov
e15342225c Small Typo Fix 2012-08-10 19:46:06 +02:00
Nguyen Nguyen
5ac94e2512 Move to the right place (src, not the generated file) 2012-08-10 01:36:55 -05:00
Nguyen Nguyen
f29bd9ffbf Update to use false value in bRemove arg in fnDestroy 2012-08-09 18:10:07 -05:00
Allan Jardine
b16efbc62a DataTables 1.9.3 :-) 2012-08-08 22:39:39 +01:00
Allan Jardine
725c1b68ba Fix: Typos in documentation comments and source comments - 11083 2012-08-08 22:22:45 +01:00
Allan Jardine
1f0b162760 Dev fix: In the update to the search array building methods I neglegted to strip \n\r from all rows (only HMTL rows were being stripped) - this is required for searching to work as expected. Picked up by the unit tests. 2012-08-08 22:05:14 +01:00
Allan Jardine
fd0e0a42e4 Fix #39 - null values should also be considered like undefined values when working with nested data and have properties created as needed. 2012-08-08 20:16:40 +01:00
Allan Jardine
0804c50d72 Dev: Unit tests for set functions 2012-08-08 20:02:59 +01:00
Allan Jardine
9a7613362f New: xhr event now has the json returned from the server as the third parameter. 2012-08-08 16:29:27 +01:00
Allan Jardine
9c51aa0ad7 New: xhr event 2012-08-08 16:27:42 +01:00
Allan Jardine
320f53e217 New: When making an Ajax call for data (fnServerData) and the server responds with the JSON parameter "sError" set, Data
Tables will alert this out. Typically end users should never see this - it is useful for error reporting from the server
 though.
2012-08-06 20:41:49 +01:00
Allan Jardine
ed935f3fb8 New: When making an Ajax call for data (fnServerData) and the server responds with the JSON parameter "sError" set, DataTables will alert this out. Typically end users should never see this - it is useful for error reporting from the server though. 2012-08-06 20:39:57 +01:00
Allan Jardine
45a6d2b505 Fix: null values that were applied to extended object properties were not being correctly applied since typeof null === 'object' - 11180 2012-08-04 09:34:26 +01:00
Allan Jardine
5311067cd2 Dev: Tidy up _fnColumnIndexToVisible and _fnVisibleToColumnIndex to use the new _fnGetColumns method. 2012-07-31 09:39:51 +01:00
Allan Jardine
d034d187bd Performance: Alter how _fnBuildSearchRow works to be much faster. For this a new method call _fnGetColumns is introduced which will pluck the column indexes that we want into an array that can then be iterated over (rather than spinning over the full aoColumns array twice, we now do it only the once for columns which are actually marked as searchable). Also use array join rather than string concatination to keep the number of operations down as much as possible. The callers of _fnBuildSearchRow must now pass in the data to be searched, limited by the searchable flag (i.e. call _fnGetRowData with the column indexes from _fnGetColumns).
Fix: Use jQuery html() and text() for HTML data to search method. Much tidier and copes with strict XHTML - downside is that it is a little slower if & is in a data string.
2012-07-31 09:25:35 +01:00
Allan Jardine
a3a4619f12 Fix - documentation: Two syntax errors in the examples, one for fnStateSaveParams and the other mDataProp - 11083 2012-07-30 10:04:42 +01:00
Allan Jardine
a79e5127f5 Fix: Remove dud CSS from themeroller file - 10794 2012-07-10 08:11:23 +01:00
Allan Jardine
1186901c95 Fix: Remove duplicate CSS lines - 10663 2012-06-30 07:07:52 +01:00
Allan Jardine
f03c670cf9 Update: Unit test updated for the mData name change from mDataProp. Note that a number of tests to test the backwards compability of mDataProp! 2012-06-29 20:10:15 +01:00
Allan Jardine
d155f7a7e7 Updated: Renaming mDataProp to mData for naming consistency and to show its flexibility. Please note that this is a backwards compatible change! DataTables will automatically check for mDataProp on a column and use that if required (if both mData and mDataProp are given then the new mData is used in preference). 2012-06-29 20:08:52 +01:00
Allan Jardine
4886322183 New: mRender option for columns - this is effectively a simpiler version of mDataProp for reading data only (while mDataProp also sets data), and much more comprhensive than fnRender (as such fnRender is now offically deprecated). See the documentation comments in model.defaults.columns.js for further information on how to use mRender. 2012-06-29 19:37:22 +01:00
Allan Jardine
0ed6ceda95 Updated: mDataProp syntax now has the ability to accept array syntax (for example "access[].name" would get an array of the 'name' properties from the access property of the data source). This is exceptionally useful for manipulating arrays - however, you are very _strongly_ advised not to use in in mDataProp itself, since when setting arrays, you will overwrite the old array (thus destroying any other properties that it already has!). Instead, see the new mRender property if you want to make use of this syntax for drawing the table. 2012-06-29 17:47:00 +01:00
Allan Jardine
56b0d11c96 Fix: When fnUpdate is called with a column index given, assume that the update is for an individual cell (which the API call has specified, so this is the correct thing to do). This also lets us tidy up some of the code in fnUpate, partiuclarly when regarding deeply nested options. 2012-06-26 17:09:03 +01:00
Allan Jardine
a022e2f736 Dev - remove debug 2012-06-25 20:06:19 +01:00
Allan Jardine
40a236a7cc Update: Remove use of $.browser since this is depricated in jQuery 1.8 and will be completely removed in jQuery 1.9. Instead we now use feature detection to determine if there is a browser bug with the width calculation of scrolling elements that needs to be worked around. This does unfortunatly increase the code size a bit - it is either this or using user agent string detection (which is exactly what is being removed from jQuery).
Starting 1.9.3 development
2012-06-25 11:19:56 +01:00
Allan Jardine
1bd6b29fe4 DataTables 1.9.2 :-) 2012-06-22 08:19:26 +01:00
Allan Jardine
1055d27887 Fix: Regex filter escaping wasn't escaping the dash ('-') character believe it or not. That's been there since very early DataTables! 2012-06-13 18:27:04 +01:00
Allan Jardine
284658e3c9 Fix: When setting deeply nested object properties, where the parent object doesn't yet exist, don't just silently fail. Since we are setting a value, we are at liberty to create the parent object and then set the value - this now does so. 2012-06-07 09:43:47 +01:00
Allan Jardine
29e0d112cb Fix - docs: Add jqXHR saving to fnServerData example 2012-06-01 07:42:01 +01:00
Allan Jardine
3d802a685b Fix - docs: JSDoc syntax errors which were picked up by JSDoc Toolkit 2012-05-20 10:55:23 +01:00
Allan Jardine
391cd6a7a6 Fix - API: $ method, when used with defered rendering, when all rows have not been rendered, results in jQUery trying to perform a selector on 'null' which throws an error. Now check for the tr having being created before adding it to the array to pass to jQuery - 8862 2012-05-20 10:33:35 +01:00
Allan Jardine
b64dda47c3 Fix: fnDeleteRow could cause the page to drop back by one - 9505 2012-05-02 07:05:00 +01:00
Allan Jardine
49fe9f2e0e Fix: Calling fnClose in fnPreDrawCallback would result in an error - 9702 2012-04-29 18:57:37 +01:00
Allan Jardine
d512e8cce7 Dev - build the last change (fee3ba7) 2012-04-29 10:15:51 +01:00
Allan Jardine
fee3ba754f Merge pull request #46 from Petah/master
Allow custom JUI header and footer classes
2012-04-29 02:13:33 -07:00
Allan Jardine
c2a2b4f531 Fix - docs: fnStateLoad example has a spare parameter (although not in the parameters list). Removed 2012-04-29 08:23:17 +01:00
Allan Jardine
2884ee23d2 Start 1.9.2 development
Fix - docs: sDom default had an error in it for the closing bracket
2012-04-27 16:17:22 +01:00
Allan Jardine
f6372323e3 Update: -webkit0overflow-scrolling:touch on all dataTables_scrollBody CSS files 2012-04-15 19:21:52 +01:00
Allan Jardine
ba85dc22d6 DataTables - 1.9.1 release :-) 2012-04-15 19:16:24 +01:00
Allan Jardine
827d4c1ae4 Fix unit tests: Witht he change to allow info macros in any of the strings the unit tests need updating to reflect this 2012-04-13 18:23:43 +01:00
Allan Jardine
aef0be6a1d Fix unit test: Number of errors in this test 2012-04-13 18:23:19 +01:00
Allan Jardine
e290b2cd7a Fix - unit test: Async behaviour could cause test to fail since the init might not have been complete (amazing that it was passing all this time - faster computers and faster JS engines now causing it to fail!) 2012-04-13 18:22:18 +01:00
Allan Jardine
9ec52faec5 Dev fix: The change to set all Ajax properties has a knock on effect on setting deep objects that don't exist, since that is now attempted. Picked up by unit test. 2012-04-13 17:56:46 +01:00
Allan Jardine
814ce1f7d5 Update: Bring the mDataProp as a function functionality to parity for Ajax / JS sourced data and DOM sourced data. Previously DOM sourced data would call the 'set' option for the mDataProp function but Ajax/JS sourced data would not, resulting in the set option never being called for those table types, which is a total bummer when you want to do some formatting in the set option. So now it is called. I was slightly conerned about the performance hit since this means a couple of extra function calls for each cell, but its all in JS, no DOM and I can see virtally no difference with about 50'000 rows and 5 columns of data, so acceptable for the benefits. 2012-04-13 17:25:25 +01:00
Allan Jardine
513d6d5440 New: "destroy" event - when the table is destroyed the destroy event is now triggered. This is very similar to how aoDestroyCallback worked before, but this brings the implementation into line with the newer callback/events mechanisim used in DataTable 2012-04-13 15:26:30 +01:00
Allan Jardine
ac9e454e11 New: Column option "sCellType" - allows you to create TD (default) or TH cells for a column. Useful for creating row headings in the TBODY. 2012-04-13 13:31:02 +01:00
Allan Jardine
732d25b229 Fix: IE8 bug where an empty string read from a DOM input element is JSON encoded as '"null"' - absolutely mental! See this blog post for more information http://blogs.msdn.com/b/jscript/archive/2009/06/23/serializing-the-value-of-empty-dom-elements-using-native-json-in-ie8.aspx . 2012-04-13 11:56:01 +01:00
Allan Jardine
773c88b9f6 Fix: When mDataProp is given as a function, an error in getting the data would be rather ugly - 8400 2012-04-13 11:40:45 +01:00
Allan Jardine
8a66adc2d4 New: The _START_, _END_, _MAX_ and _TOTAL_ macros for the information language strings can now be used in any info string, rather than being limited to just the ones noted in the documentation - a new internal function called _fnInfoMacros is introduced to allow this to work - 9211 2012-04-13 11:29:56 +01:00
Allan Jardine
2a60a96177 New: Static API method - fnVersionCheck same as the version check that is already available as an instance method, but here available as a static API method attached to $.fn.dataTable
New: Static API method - fnIsDataTable - check if a TABLE node is a DataTable or not
New: Static API method - fnTables - get the DataTables that are initialised on the table (optionally limit to just the visible tables)
Examples update - Tabs and scrolling updated to use the new static fnTables method
Fix: Settings object model was missing the nScrollHead and nScrollFoot properties from the documentation
2012-04-13 10:44:25 +01:00
Allan Jardine
0518525f59 Fix: Captions which were positioned using caption-side:bottom (CSS) would be positioned incorrectly if using a scrolling table. Need to work around webkit bug 83867 to address this and add an empty tfoot element if one is not given - 2022 2012-04-13 09:25:47 +01:00
Allan Jardine
4be9b362c8 Fix: When scrolling and row height collapse was enabled, it was possible that the table column width applied would be too small due to the fact that a scrollbar would be shown for a fraction of a second, due to the height of the scroll body container enforced by the scroll collapse. Fix is to take into account the header height before the width calculation is done 2012-04-12 17:27:05 +01:00
Allan Jardine
3a27a605b9 Fix: Scrollbody height in IE7- - use offsetHeight consistently - 9424 2012-04-12 09:25:35 +01:00
Allan Jardine
5114e98a93 API - fix: The parameter for fnDraw was inverted by mistake in the 1.9.0 release - 7825 2012-04-04 08:28:35 +01:00
Allan Jardine
35a23adb75 Dev fix: Missed a variable def in the recent _fnLanguageCompat change 2012-04-02 11:53:13 +01:00
Allan Jardine
cd0babca54 Fix: IE6/7 return an empty string for getAttribute('id') when there is no ID attribute, rather than null. As such tables were not automatically being given an ID when they didn't have one, which created a situation where the settings object for a table could be 'lost' in IE6/7. Now check for empty string when checking the table ID. 2012-04-02 10:25:52 +01:00
Allan Jardine
04d4786455 Fix: IE6/7 when scrolling is enabled could loose the sorting event due to the way cloned nodes work in those browsers. Note that this was introduced after 1.9.0. Related - jQuery bug 10437 - http://bugs.jquery.com/ticket/10437 2012-04-02 10:03:47 +01:00
Allan Jardine
c1e40a8596 Fix: Language backwards compatibility could override developer defined defaults - 9267 2012-03-30 15:30:19 +01:00
Allan Jardine
e815062197 Fix: When -1 is selected for the display length (show all) the full numbers paging control didn't show page '1' - 9170 2012-03-30 07:48:33 +01:00
Allan Jardine
dec097ef50 Docs - fix: Show oSettings parameter in fnDrawCallback example - 9067 2012-03-26 07:50:38 +01:00
Allan Jardine
1d62b40f66 Docs - fix: Typos 2012-03-21 08:53:21 +00:00
Allan Jardine
f883df1afd Docs - fix: fnSort documentation updated to indicate column sorting - 9094 2012-03-21 06:49:24 +00:00
Allan Jardine
2096244c60 Fix: afnSortData functions were not being executed with the DataTables instance's scope 2012-03-19 12:09:49 +00:00
Allan Jardine
b5f4938d7d Fix: If sType for a column is html and the data is null, then _fnDataToSearch could throw an error - 8987 2012-03-14 07:51:07 +00:00
Allan Jardine
c22dfe00d3 Strip HTML from the aria-label tag for the sorting headers 2012-03-14 07:04:33 +00:00
Allan Jardine
74f970e1a7 Fix: Use border collapse in JUI stylesheet - 8931 2012-03-12 08:06:24 +00:00
Allan Jardine
918a065f21 Add documentation note on the fact that mDataProp as a function can get a 'type' of undefined when raw data is expected to be returned 2012-03-10 11:34:38 +00:00
Sahab Yazdani
1ef5243cab Remove unused variables from fnUpdate 2012-03-06 12:51:56 -05:00
Sahab Yazdani
f5ff5884bc Remove unused variables from fnSetColumnVis 2012-03-06 12:51:26 -05:00
Allan Jardine
f0c91b7a9c Update: Add -webkit-overflow-scrolling: touch; to the scrolling container to provide much improved scrolling interaction in browsers that support that (iOS5, and possibly new Andriod?) 2012-03-04 13:54:58 +00:00
Allan Jardine
cc42c49ec3 New - initisalisation: iDeferLoading can now also be an array allowing the developer to specify the number of records before and after filtering for the information display - 7936 2012-03-03 07:34:11 +00:00
Allan Jardine
fc730e17f3 Fix: The fnServerData error function can use the internal logging function now adays - make it do so - 8763 2012-02-29 10:33:03 +00:00
Allan Jardine
3a40c3a440 Fix: The sStripeOdd / sStripeEven options for the class objects were not being applied to the table. The fix is to set the default for asStripeClasses to be null, and then if null is found there, then the user hasn't applied a default, nor have they overridden the default, therefore we can use the classes from the class objects - 8770. 2012-02-29 09:09:16 +00:00
Allan Jardine
e40d1edebc Fix - docs: Link to sDom from bFilter was incorrect 2012-02-28 10:35:46 +00:00
Allan Jardine
5479600611 Fix - performance: Don't extend the passed in data a second time - its a waste of time 2012-02-26 19:12:11 +00:00
Allan Jardine
126a4fe44e Fix: When scrolling is enabled the initial width of the header was being set to 150% which was a bit random and could result in the header flashing its display in the wrong place when loading. The fix is to use 100% unless x-scrolling is being forced, at which point it needs to match the inner table - 8332 2012-02-25 07:56:27 +00:00
Allan Jardine
872dc0db3e Fix: Feature match the server-side sorting to the client-side sorting for what information is sent to the server for sorting. Previously aDataSort was no honored - https://twitter.com/#!/naomiaro/status/172397914239414272 2012-02-22 19:47:09 +00:00
Allan Jardine
bc756f3a69 Docs fix: fnStateLoad documention refered to fnStateSave instead of itself 2012-02-21 14:14:13 +00:00
Allan Jardine
793020a8d4 Updated: When throwing an error, throw a "new Error()" so we can get a bit more information about the error
Updated: When using custom sort data types, if the returned array is not of the required length (aoData.length), then an error is thrown
2012-02-20 08:15:28 +00:00
Allan Jardine
409edd791b Fix: When sorting non-string data as a string (type to type detection) then DataTables 1.9 would automatically convert the non-string data to an empty string so it can be sorted. This can result in unexpected ordering in the table. The fix is to check for a toString() function that is available for the data and if it is there, then use it (great for numeric data, dates etc), otherwise the empty string is used (null, methods without toString). This brings 1.9 back into line with how 1.8 behaved - 8549 2012-02-17 09:29:41 +00:00
Allan Jardine
af2e153bc3 Fix: When updating the filtering input control, we would just match on INPUT elements, so if the developer had appended an input button to the filter wrapper, that value would also be changed - 8537. Now a reference to the input element is stored and used to update the input value (this method means we don't need to add another class option, and developers can change to 'type=search' if they wish). 2012-02-15 09:36:51 +00:00
Allan Jardine
431b5e8a55 Fix: IE8 doesn't like the console check in logging - make it object based on window - 8517 2012-02-14 08:44:34 +00:00
Allan Jardine
ca009fdf88 Fix: When scrolling the column matching would remove any nested THEAD and TFOOT elements in the table - 8423 2012-02-08 08:34:39 +00:00