-
Notifications
You must be signed in to change notification settings - Fork 6
Expand file tree
/
Copy pathjquery.quick.pagination.min.js
More file actions
7 lines (6 loc) · 2.07 KB
/
jquery.quick.pagination.min.js
File metadata and controls
7 lines (6 loc) · 2.07 KB
1
2
3
4
5
6
7
/* jQuery Quick Pagination Minified v0.1.1 */
(function($){"use strict";$.fn.quickPagination=function(options){var defaults={pageSize:10,currentPage:1,holder:null,pagerLocation:"after",transitionSpeed:null};options=$.extend(defaults,options);return this.each(function(){var selector=$(this);var pageCounter=1;if($(".simplePagerContainer").length<1)selector.wrap("<div class='simplePagerContainer'></div>");selector.parents(".simplePagerContainer").find("ul.simplePagerNav").remove();selector.children().removeClass(function(index,css){return(css.match(/simplePagerPage([0-9]+)?/ig)||[]).join(' ');}).filter(":visible").each(function(i){if(i<pageCounter*options.pageSize&&i>=(pageCounter-1)*options.pageSize){$(this).addClass("simplePagerPage"+pageCounter);}else{$(this).addClass("simplePagerPage"+(pageCounter+1));pageCounter++;}});selector.children().hide();selector.children(".simplePagerPage"+options.currentPage).show();if(pageCounter<=1){return;}
var pageNav="<ul class='simplePagerNav'>";for(var i=1;i<=pageCounter;i++){if(i==options.currentPage){pageNav+="<li class='page currentPage simplePageNav"+i+"'><a rel='"+i+"' href='#'>"+i+"</a></li>";}else{pageNav+="<li class='page simplePageNav"+i+"'><a rel='"+i+"' href='#'>"+i+"</a></li>";}}
pageNav+="</ul>";if(!options.holder){switch(options.pagerLocation){case"before":selector.before(pageNav);break;case"both":selector.before(pageNav);selector.after(pageNav);break;default:selector.after(pageNav);}}else{$(options.holder).append(pageNav);}
selector.parent().find(".simplePagerNav a").click(function(e){e.preventDefault();var clickedLink=$(this).attr("rel");options.currentPage=clickedLink;var container=options.holder?options.holder:".simplePagerContainer";$(this).parents(container).find("li.currentPage").removeClass("currentPage");$(this).parents(container).find("a[rel='"+clickedLink+"']").parent("li").addClass("currentPage");selector.children().hide();if(options.transitionSpeed){selector.find(".simplePagerPage"+clickedLink).fadeIn(options.transitionSpeed);}else{selector.find(".simplePagerPage"+clickedLink).show();}
return false;});});};})(jQuery);