Help with Scroller

Help with Scroller

tazimmermantazimmerman Posts: 1Questions: 0Answers: 0
edited March 2014 in Plug-ins

Thank you for developing such a high-quality library. I really enjoy using it, but now that I'm attempting to employ some of the more advanced features, I'm having a difficult time understanding how they work. I swear I've done my due diligence here and scoured the various discussions, but I seem to have only confused myself further.

I'm trying to provide a responsive table (in both the design and performance sense) which currently tops out at roughly 50,000 rows.

It seemed to me that a combination of an Ajax data source along with server-side processing and the Scroller were the key to success. However, I'm unable to replicate the example behavior which is what I think I want (found at that appears to query for data as the scrolling advances.

Here's my understanding of the options/features I am using:

- bServerSide
All of the heavy-lifting is performed by the server (paging, filtering, sorting, etc.) which is evident in the various parameters sent to the server when querying for data. Makes sense, although I may be utilizing the total record fields incorrectly.

- sAjaxSource
jQUery XHR made by the plugin to the server *one time only* to load the data. The parameters provided as a result using ``bServerSide: true`` are used tailor the query.

- sDom: frtiS ("S" being the important one)
Enable the Scroller. Use it with ``bDeferRender: true`` for maximum awesomeness.

- The Scroller itself
Requests chunks of data, more than is visible in the viewport, waiting a bit in between if the user is scrolling rapidly to prevent self-DOS attack. As scrolling continues additional requests are made to further populate the table.

I think I got the first three right and the last one wrong, because no matter what I do my page behaves like a single, massive Ajax request, then some processing of the data on the client side occurs, and I assume DataTables renders it as needed. Am I wrong in assuming the Scroller can "buffer" data in as needed? Does it require the table to be fully populated, and then it just does a better job of rendering than the ``bDeferRender`` option?

Thank you in advance for any assistance you or other forum members can provide.

This discussion has been closed.