AJAX Based jQuery Load More / Pagination Plugin - loadMore.js
| File Size: | 5.88 KB |
|---|---|
| Views Total: | 19768 |
| Last Update: | |
| Publish Date: | |
| Official Website: | Go to website |
| License: | MIT |
loadMore.js is a tiny, easy-to-use jQuery plugin for generating a loading more button which allows to load more web content from external data sources via AJAX requests. Great for your infinite scrolling webpage where the visitors are able to load more posts without navigating away from the current webpage.
How to use it:
1. Add the loadMore.js JavaScript file into your webpage after you've added jQuery library.
<script src="//code.jquery.com/jquery-3.0.0.min.js"></script> <script src="loadmore.js"></script>
2. Create a 'load more' button on the webpage.
<a class="button" href="">More...</a>
3. Call the function on the target container and specify the external data source you want to fetch.
$('.list').loadmore('/path/to/more.html');
4. Apply the following options to the plugin and override the default values as per your need.
$('.list').loadmore('more.html',{
// custom id
id : null,
// class name for the load more link
className : 'more',
// rather than creating a new button, use an existing one matching this selector / element
useExistingButton: false,
// text to show in the load more link
text : 'More',
// text to show while loading
loadingText : 'Loading',
// current page in the list
page : 0,
// how many elements should be expected on a new page
rowsPerPage : false,
// maximum numbers of pages to fetch at once
maxPageCount : false,
// the query parameter used to specify which page to fetc
pageParam : 'page',
// when more than one page is fetched at once this is the query parameter used to specify the page to start from
pageStartParam : 'start',
// custo filter result
filterResult: '*',
// executed once a new page has been loaded, return false if the pager should be removed
complete : false,
// whether to use the History API in supported browsers or not
useHistoryAPI : true,
// whether to use offsets rather than page numbers
useOffset : false,
// an offset to add to all offsets.
// Will be parsed from any pageParam or pageStartParam query params on an existing button.
baseOffset: 0,
// or complex URL cases, define a method that will be sent url and params and returns either an object with a url and params key or a url string if no params should be used anymore.
processUrl: false,
// if one uses both processUrl and useExistingButton then one will likely have to have a custom method to extract the modfied baseOffset from the existing button.
// Receives Location object, itemCount and options.
interpretUrl: function (loc, itemCount, options) {
var result;
loc.search.substr(1).split('&').some(function (pair) {
pair = pair.split('=');
if (pair[0] === options.pageParam) {
result = parseInt(pair[1]) + options.baseOffset;
return true;
} else if (pair[0] === options.pageStartParam) {
result = parseInt(pair[1]) + options.baseOffset - itemCount;
return true;
}
});
return result;
}
});
5. Fire an event when the last page has been fetched.
$(".list").on("loadmore:last", function() {
// ...
});
This awesome jQuery plugin is developed by voxpelli. For more Advanced Usages, please check the demo page or visit the official website.











