jquery.페이지 페이지 만들기
18824 단어 프런트 엔드
(function($){
var ms = {
init:function(obj,args){
return (function(){
if (args.pageCount > 1) {
ms.fillHtml(obj,args);
ms.bindEvent(obj,args);
}
})();
},
// html
fillHtml:function(obj,args){
return (function(){
obj.empty();
//
if(args.current > 1){
obj.append('"javascript:;" class="prevPage"> ');
}else{
/*obj.remove('.prevPage');*/
obj.append('"javascript:;" class="disabled"> ');
}
//
if(args.current != 1 && args.current >= 4 && args.pageCount != 4){ obj.append('"javascript:;" class="tcdNumber">'+1+''); } if(args.current-2 > 2 && args.current <= args.pageCount && args.pageCount > 5){ obj.append('... '); } var start = args.current -2,end = args.current+2; if((start > 1 && args.current < 4)||args.current == 1){ end++; } if(args.current > args.pageCount-4 && args.current >= args.pageCount){ start--; } for (;start <= end; start++) { if(start <= args.pageCount && start >= 1){ if(start != args.current){ obj.append('"javascript:;" class="tcdNumber">'+ start +''); }else{ obj.append('"current">'+ start +' '); } } } if(args.current + 2 < args.pageCount - 1 && args.current >= 1 && args.pageCount > 5){ obj.append('... '); } if(args.current != args.pageCount && args.current < args.pageCount -2 && args.pageCount != 4){ obj.append('"javascript:;" class="tcdNumber">'+args.pageCount+''); } // if(args.current < args.pageCount){ obj.append('"javascript:;" class="nextPage"> '); }else{ /*obj.remove('.nextPage');*/ obj.append('"javascript:;" class="disabled"> '); } })(); }, // bindEvent:function(obj,args){ return (function(){ obj.on("click","a.tcdNumber",function(){ var current = parseInt($(this).text()); ms.fillHtml(obj,{"current":current,"pageCount":args.pageCount}); if(typeof(args.backFn)=="function"){ args.backFn(current); } }); // obj.on("click","a.prevPage",function(){ var current = parseInt(obj.find("span.current").text()); ms.fillHtml(obj,{"current":current-1,"pageCount":args.pageCount}); if(typeof(args.backFn)=="function"){ args.backFn(current-1); } }); // obj.on("click","a.nextPage",function(){ var current = parseInt(obj.find("span.current").text()); ms.fillHtml(obj,{"current":current+1,"pageCount":args.pageCount}); if(typeof(args.backFn)=="function"){ args.backFn(current+1); } }); })(); } } $.fn.createPage = function(options){ var args = $.extend({ pageCount : 10, current : 1, backFn : function(){} },options); ms.init(this,args); } })(jQuery);
jquery.page.css 내용:
.jpage {
margin-top: 20px;
width: 100%;
float:left;
}
ul.jpage,
.jpage ul,
.jpage ol,
.jpage li {
list-style-type: none;
margin: 0;
padding: 0;
}
.jpage li {
float: left;margin-right: 5px;
}
.jpage li span {
display: block;
padding:0 25px;
text-align: center;
color: #666;
height: 35px;line-height: 35px;
}
.jpage li a {
display: block;
padding:0 25px;
text-align: center;
height: 35px;
line-height: 35px;
color: #666;
/* background: #FFF none repeat scroll 0% 0%;
border: 1px solid #DADADA; */
border-radius: 4px;
border: 1px solid #ddd;
text-decoration: none;
}
.jpage li a:hover {
/* display: block;
padding:0 25px;
text-align: center;
height: 35px;
line-height: 35px; */
/* color: #fff;
background: #2CA9E1 none repeat scroll 0% 0%;
border: 1px solid #2CA9E1; */
color: #428bca;
border: 1px solid #428bca;
}
.jpage li .current {
color: #fff;
background-color: #428bca;
border: 1px solid #428bca;
border-radius: 4px;
}
.jpage li .disabled {
color: #bfbfbf;
background: #f6f6f6;
border: 1px solid #bfbfbf;
border-radius: 4px;
}
HTML 코드:
<ul id="page" class="jpage">ul>
<script>
$("#page").createPage({
pageCount:"9",
current:"2",
backFn:function(p){
location.href="xxx.html?pageNo=" + p;
}
});
script>
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
【Vue.js】컴포넌트의 3개의 네비게이션 가드일에서 사용하게 되었기 때문에 1부터 Vue.js에 대해 배웠다. 그 이름에서 알 수 있듯이 무언가를 가드하기위한 처리로, 대체로 페이지 천이 전에 특정 처리를 실행시켜 페이지 천이시키지 않게 한다. Vue.js의 ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.