Skip to content

j(m)scroll : Infinite Scrolling Plugin for jQuery / jQuery Mobile

Notifications You must be signed in to change notification settings

jonatas15/jmscroll

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

39 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

jmscroll

j(m)scroll : Infinite Scrolling Plugin for jQuery / jQuery Mobile

A variation of Philip Klauzinski's excellent jscroll Plugin (http://jscroll.com). The only problem i had with it was that when jQuery Mobile was included jscroll was loading more than one page at initialization. Given that, and my need for a not fixed footer for social buttons, copyrights et al. i created a simpler version that loads next set of content when the user scrolls to the starting of the footer (or some predefined pxs above it). I would really like to know what breaks jscroll when jQuery Mobile is included. If you know the answer please share it with me. Unfortunately i don't have the time to find it myself.

You can find a simple working example in the example/ folder. The parameters you can define are:

debug TRUE or FALSE for logging in browser's console.
autoTrigger TRUE or FALSE for loading automatically or by clicking a button.
autoTriggerUntil After the defined number of pages -which will be triggered automatically- a button click will trigger the loading of next pages. This is the one of the two ways you have to reach document's footer.
totalPages The other one is the totalPages limit which defines the maximum page number (auto or manually triggered).
contentSelector Selector for loading only part(s) of the response.
nextSelector Selector to find the link which contains the href pointing to the next set of content.
footerSelector Self-explanatory: The footer selector.
footerPadding The distance from the footer at which to trigger the loading of the next set of content.
footerVisible Set this parameter to FALSE in order to hide footer while auto triggering.
loadingContentDelay For testing purposes -or because you have a real fancy progress bar you want your visitors to see- you can define a delay (in milliseconds) to the Ajax response.
progressType html | spinner | bar [For Each Option There Are Extra Parameters] :
progressType='html'
loadingHtml HTML Markup to show while loading next (for example a loading .gif, though it is not a good idea due to poor mobile browser copatibility).
progressType='spinner'
For better compatibility you can try fgnass' spin.js (http://fgnass.github.io/spin.js/). You can define all the available parameters following the names of fgnass prefixed with 'spinner' (camel case). For example:
spinnerLines The number of lines to draw.
spinnerLength The length of each line (in px).
spinnerWidth The line thickness (in px).
progressType='bar'
If none of the above suits your needs, you can go with the pure js progress bar: a span inside a full width div which is animated (in steps) to fill all the container.
progressBarSpeed Milliseconds between each step of the animation. Old mobile browsers may have problems if you animate in many steps or too quickly. Use sparingly.
callback Callback function to be called at the end of each page load.

About

j(m)scroll : Infinite Scrolling Plugin for jQuery / jQuery Mobile

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published