/ Published in: jQuery
                    
                                        
Creates pagination - need to specify container element, list items and number to display. Content should be marked up as follows:
<ul>
<li>Lorem ipsum</li>
<li>Lorem ipsum</li>
<li>Lorem ipsum</li>
<li>Lorem ipsum</li>
<li>Lorem ipsum</li>
<li>Lorem ipsum</li>
<li>Lorem ipsum</li>
<li>Lorem ipsum</li>
</ul>
                <ul>
<li>Lorem ipsum</li>
<li>Lorem ipsum</li>
<li>Lorem ipsum</li>
<li>Lorem ipsum</li>
<li>Lorem ipsum</li>
<li>Lorem ipsum</li>
<li>Lorem ipsum</li>
<li>Lorem ipsum</li>
</ul>
                            
                                Expand |
                                Embed | Plain Text
                            
                        
                        Copy this code and paste it in your HTML
function pagination(el, items, numItemsToShow){
//number of items in list
var numItems= $(items).length;
//calculate the number of pages
var numPages = Math.ceil(numItems/numItemsToShow);
//hide all elements
$(items).hide();
//and show the first n (show_per_page) elements
$(items).slice(0, numItemsToShow).show();
//build pagination
var navigation_html = '<ul class="pagination">Page: ';
var current_link = 0;
while(numPages > current_link){
navigation_html += '<li><a href="">'+ (current_link + 1) +'</a></li>';
current_link++;
}
navigation_html += '</ul>';
//insert pagination
if (numItems > numItemsToShow){
$(el).after(navigation_html);
}
//add active_page class to the first page link
$('ul.pagination li:first-child a').addClass('selected');
//pagination behaviour
$("ul.pagination li a").click (function(){
//identify current pagination if multiple on page
var thisPag = $(this).parents("ul");
//identify current container
var thisList = $(thisPag).prev("ul");
//identify current list items
items = $(thisList).children("li");
$(thisPag).find("li a").removeClass('selected');
$(this).addClass('selected');
var thisPage = parseInt($(this).text());
var beginItem = (thisPage -1) * numItemsToShow;
$(items).hide();
//and show the first n (show_per_page) elements
$(items).slice(beginItem, beginItem + numItemsToShow).css('display', 'block');
return false;
})
}
URL: http://web.enavu.com/tutorials/making-a-jquery-pagination-system/
Comments
 Subscribe to comments
                    Subscribe to comments
                
                