스아이

반응형페이징!

반응형웹만들때 페이징때문에 고민하셨죠? 간편하게 제가 하나만들었습니다ㅎ

 

[code]​

<script type="text/javascript" src="//code.jquery.com/jquery-1.11.0.js"></script> 

<style type="text/css">

.paging{color:#555;padding:0;}

.paging li{list-style:none;}

.paging li{line-height:25px; cursor:default; text-align:center; width:25px; height:25px; display:inline-block; font-size: 12px; font-weight:bold; color:#333;}

.paging .pg:hover{cursor:pointer; text-decoration: underline}

.paging .current{color:#FF3636; cursor:default !important; text-decoration:none !important;}

.first, .pre, .next, .last{color:#888 !important;}

.first, .last{letter-spacing:-3px;}

.active{color:#333 !important; cursor:pointer !important;}

</style>

 

<script type="text/javascript">​

 

window.onload = function() {

var n = 0,

    c  = 35 , // 전체페이지(35페이지)

    w = 27 , //페이지표시 1개의 가로사이즈값

    current = 1; // 현재페이지(1페이지)

 

/* 페이지클릭시 */

$(document).delegate('.pg','click',function(e){

current = parseInt($(this).text());

$('.pg').removeClass('current');$(this).addClass('current'); // 페이지 클릭시 추가되는 클래스(current)

});

 

/* 맨앞, 앞, 뒤, 맨뒤 버튼 클릭시 */

$(document).delegate('.first, .pre, .next, .last','click',function(e){

var x = Math.floor((parseInt($('.paging').css('width'))-w*4)/w);

if(x > 10){x=10;}

if(n >= 1){

if($(this).is('.first')){current=1;paging();}

if($(this).is('.pre')){current=n-x+1;paging();}

} 

if(c > n+x){

if($(this).is('.next')){current=n+x+1;paging();}

if($(this).is('.last')){current=c;paging();}

}

});

    

/* 맨앞, 앞, 뒤, 맨뒤 버튼 클릭시 */

function paging(){

var page='<li class="first"><<</li><li class="pre"><</li>';

var x = Math.floor((parseInt($('.paging').css('width'))-w*4)/w);

if(x > 10){x=10;}

n = Math.floor(current/x);

if(n == current/x){n = n*x-x;}else{n = n*x}

for(var i=1; i <= x; i++ ){

if(current == i+n){

page += '<li class="pg current">'+(i+n)+'</li>';

}else{

page += '<li class="pg">'+(i+n)+'</li>';}

if(i == x || i == 10 || i+n == c){$('.paging').html(page+'<li class="next">></li><li class="last">>></li>');

if(n > 1){$('.first, .pre').addClass('active');}  // 맨앞, 앞 활성화시 추가되는 클래스(active)

if(c > n+x){$('.next, .last').addClass('active');}  // 뒤, 맨뒤 버튼 활성화시 추가되는 클래스(active)

break}}

}

 

paging() //웹페이지 불러올시 반응형페이징 함수 작동

 

window.onresize = function(){paging()}  //브라우저 사이즈 조절시 반응형페이징 함수 작동

}

 

</script>

 

<ul class="paging"></ul> <!-- 반응형페이징을 불러올 위치 -->

 

[/code]​

​

군인신분으로 사이버지식정보방에서 만든거라 보안상 파일업로드가 안되므로 글로 올리는점 양해바랍니다.

 

http://sir.co.kr/bbs/board.php?bo_table=cm_free&wr_id=1113337

 

|

댓글 14개

그누보드에 연동할시 게시판스킨에서 <?php echo $write_pages; ?>와 기존 페이징 관련css를 모조리 지우신후에 원하는 위치에 저소스를 삽입하고

c = 35 , // 전체페이지(35페이지) 이부분을

c = <?php echo $total_page?> , 로 수정해주시고

current = 1; // 현재페이지(1페이지) 이부분을

current = <?php echo $page ?>; 로 수정해주시면됩니다.

디자인은 알아서^^;
복무중에 귀한자료를 ^^.. 감사합니다. 그리고 남은 군복무 잘 마무리 하세요 ~
예^^...감사합니다;
그누보드에서 페이지에 링크거는법을깜빡했네요. 이걸추가시키면됩니다^^;
25번줄과 26번줄 구문 사이에 이스크립트를 추가시키면됩니다.

[code]
$(location).attr('href',<?php echo g5_bbs_url ?> + '/board.php?bo_table=' + <?php echo $bo_table ?> + '&page=' + current );
[/code]
우와...좋은 소스 고마워요. 잘 쓸게요.
근데, 대체 뭘 공부하면 이런 걸 짤 수 있죠? ㅎ
그냥...독학했습니다^^;
외국사이트돌아다니면서 소스도 한번씩 파헤쳐보고...ㅎ;
제가 반응형웹을 처음 접하게된게 아마 2013년때쯤이었을껍니다.. 그러다가 css로 반응형웹을 짜는기술도 있공...자유롭게 하는방법에선 자바스크립트가 짱이더라고요ㅎ;
오호, 3년만에 이런 성취를....대단하십니다. ^^
거기에 20개월 가까이 지금 군대에있습니다...ㅎ;
군생활 제대로 하셨네요. ㅎㅎ
적용해야겟네요 ㅎ
얼마든지요^^ㅎ;
오~좋은 것 같아요~잘 쓰겠습니다~
잘 쓰겠습니다. 군인이신데 바쁜 와중에도 좋은 자료를 올려주셨네요.
28일에 전역했어요^^ㅋ;
댓글을 작성하시려면 로그인이 필요합니다.

프로그램

8,188건
+
제목 글쓴이 날짜 조회
15-12-13 조회 2,531
15-12-13 조회 2,946
15-12-11 조회 2,608
15-12-11 조회 2,569
15-12-11 조회 2,571
15-12-10 조회 2,530
15-12-10 조회 2,588
15-12-10 조회 2,562
15-12-03 조회 3,205
15-12-03 조회 2,720
15-11-25 조회 2,802
15-11-09 조회 3,238
15-11-04 조회 2,971
15-06-09 조회 4,098
15-05-06 조회 5,094
15-03-28 조회 4,623
14-12-05 조회 5,006
14-10-25 조회 5,100
14-10-13 조회 4,277
14-10-03 조회 6,291
14-09-19 조회 4,973
14-09-18 조회 4,055
14-09-13 조회 4,617
14-09-03 조회 5,608
14-08-26 조회 4,213
14-08-26 조회 4,021
14-08-26 조회 3,981
14-08-11 조회 6,533
14-08-06 조회 4,130
14-08-06 조회 3,729
14-08-06 조회 3,944
14-08-01 조회 6,345
14-08-01 조회 3,848
14-07-30 조회 4,448
14-06-28 조회 5,167
14-06-28 조회 4,441
14-05-11 조회 4,593
14-05-09 조회 4,952
14-05-09 조회 7,716
14-04-30 조회 4,343
14-04-27 조회 4,199
14-04-25 조회 4,901
14-04-21 조회 3,879
14-04-21 조회 5,010
14-04-10 조회 4,608
14-04-01 조회 6,161
14-03-03 조회 3,537
14-02-25 조회 5,925
14-02-14 조회 5,198
14-02-13 조회 4,957
14-01-03 조회 4,451
13-12-06 조회 3,770
13-11-22 조회 5,523
13-11-18 조회 4,033
13-10-02 조회 4,448
13-10-02 조회 3,700
13-10-02 조회 3,962
13-10-02 조회 3,818
13-10-02 조회 4,185
13-09-16 조회 8,035
13-09-16 조회 5,400
13-08-18 조회 5,435
13-07-11 조회 4,113
13-07-10 조회 4,697
13-07-09 조회 4,734
13-07-09 조회 4,990
13-07-04 조회 4,489
13-07-04 조회 4,129
13-07-04 조회 4,241
13-07-01 조회 4,729
13-07-01 조회 4,562
13-07-01 조회 6,841
13-06-23 조회 4,388
13-06-05 조회 3,639
13-05-29 조회 4,876
13-05-10 조회 4,283
13-04-05 조회 4,902
13-04-05 조회 6,588
13-04-05 조회 1.1만
13-04-05 조회 7,183
13-04-05 조회 6,570
13-03-31 조회 5,850
13-03-31 조회 4,172
13-03-28 조회 4,533
13-03-28 조회 6,729
13-03-28 조회 9,213
13-03-28 조회 4,345
13-03-24 조회 3,960
13-03-21 조회 4,641
13-03-21 조회 1.8만
13-03-14 조회 3,947
13-03-10 조회 4,754
13-03-10 조회 4,515
13-03-10 조회 4,215
13-03-08 조회 5,272
13-03-08 조회 4,377
13-03-03 조회 5,034
13-03-03 조회 7,491
13-03-03 조회 4,230
13-03-03 조회 1.1만