Switch branches/tags
Nothing to show
Find file Copy path
Fetching contributors…
Cannot retrieve contributors at this time
67 lines (46 sloc) 2.14 KB

jQuery Infinite Scroll

A basic infinite scrolling pattern for jQuery.

Getting Started



$(window).infinitescroll({url: window.location.href});

A little more customized

   url: window.location.href,
   triggerAt: 150,
   page: 4,
   appendTo: 'table.userlist tbody'


How can I specify which page of data to load?

The “page” query parameter is appended to the URL specified

How to tell this plugin there's no more data/pages to load?

This is determined by handing back an empty response from the server. Once this happens, this plugin stops attempting to load data.


   default: null
   The URL to fetch more data to append
   default: 300
   This is the number of pixels from the bottom of the container (defaults to "document") to trigger the fetch for data
   default: 2
   The page number to fetch (sets the page=# query parameter in the URL)
   default: ".list tbody"
   The selector that .append() gets called on
   default: document
   This is the container used to measure scrolling, and then trigger a load
   default: 'none'
   Speed at which new data will smoothly fade in after appending. eg 'fast', 'slow', 250, 1000 (numbers in milliseconds). Set to 'none' or 0 to have results appear without a fade.


That this plugin will fire

infinitescroll.beforesend: Fired just before the ajax request is given
infinitescroll.finish: Fired after a successful request has finished, and the data has been inserted into the DOM
infinitescroll.maxreached: Fired after the first empty response from the server. This will disable any further loading of data.

That this plugin listens for

infinitescroll.scrollpage: This can be used to force a full-cycle load of data and append much like what happens just after the 'infinitescroll.beforesend' event is fired.
   Note: The plugin is listening for this event to be fired on whatever DOM object you initially bound it to. This assumes one the examples above were used.
   Example: $(window).trigger('infinitescroll.scrollpage', 1);