码迷,mamicode.com
首页 > 编程语言 > 详细

javascript实现分页效果

时间:2015-06-18 17:19:02      阅读:150      评论:0      收藏:0      [点我收藏+]

标签:效果   分页   javascript   跳转   页面   

一般的页面我们实现分页效果都是用跳转的形式,但是有些需求需要我们在不跳转页面的同时完成分页效果,简单的一个实现例子:

window.onload = function(){
          page({
              id:‘pageBox‘,
              nowNum:7,
              allNum:10,
              callback:function(now,all){
                  alert(now+ ‘ ‘+all)

              }
          })
        }
        function page(obj){
            if(!obj.id){
                return false;
            }
            var obj1 = document.getElementById(obj.id);
                nowNum =obj.nowNum || 1,
                allNum = obj.allNum || 5,
                callback=obj.callback ||function(){};
            if(nowNum>=4&& allNum>=6){
                var oA = document.createElement(‘a‘);
                oA.href=‘#1‘;
                oA.innerHTML =‘首页‘;
                obj1.appendChild(oA);
            }
            if(nowNum>=2){
                var oA = document.createElement(‘a‘);
                oA.href=‘#‘+(nowNum-1);
                oA.innerHTML =‘上一页‘;
                obj1.appendChild(oA);
            }
            if(allNum<=5){
                for(var i=1; i<allNum;i++){
                    var oA = document.createElement(‘a‘);
                    oA.href=‘#‘+i;
                    if(nowNum==i){
                        oA.innerHTML=i;
                    }else {
                        oA.innerHTML =‘[‘ +i+‘]‘;

                    }
                    obj1.appendChild(oA);
                }

            }else{
                for(var i =1;i<=5;i++){
                    var oA = document.createElement(‘a‘);
                   if(nowNum==1||nowNum==2){
                       oA.href=‘#‘+i;
                       if(nowNum==i){
                           oA.innerHTML =i;
                       }else{
                           oA.innerHTML =‘[‘ +i+‘]‘;
                       }

                   } else if((allNum-nowNum)==0 ||(allNum-nowNum)==1){
                       oA.href=‘#‘+(allNum-5+i);
                       if((allNum-nowNum)==0 && i==5){
                           oA.innerHTML=(allNum-5+i);
                       }else if((allNum-nowNum)==1&&i==4){
                           oA.innerHTML=(allNum-5+i);
                       }
                       else{

                           oA.innerHTML=‘[‘+(allNum-5+i)+‘]‘;

                       }

                   }else{
                       oA.href=‘#‘+(nowNum-3+i) ;
                       if(i==3){
                           oA.innerHTML =(nowNum-3+i);
                       } else{
                           oA.innerHTML =‘[‘ +(nowNum-3+i)+‘]‘;
                       }
                   }


                    obj1.appendChild(oA);
                }
            }
            if(allNum-nowNum>=1){
                var oA = document.createElement(‘a‘);
                oA.href=‘#‘+(nowNum+1);
                oA.innerHTML =‘下一页‘;
                obj1.appendChild(oA);
            }
            if(allNum-nowNum>=3&&allNum>=6){
                var oA = document.createElement(‘a‘);
                oA.href=‘#‘+allNum;
                oA.innerHTML =‘最后一页‘;
                obj1.appendChild(oA);
            }
            callback(nowNum,allNum)
            var aA= obj1.getElementsByTagName(‘a‘);
            for(var i=0;i<aA.length;i++){
                aA[i].onclick=function(){
                    var nowNum= parseInt(this.getAttribute(‘href‘).substring(1));

                    obj1.innerHTML=‘‘
                    page({
                        id:obj.id,
                        nowNum:nowNum,
                        allNum:allNum,
                        callback:callback
                    })
                     return false;
                }

            }

        }
        html代码:
        <div id="pageBox"></div>

javascript实现分页效果

标签:效果   分页   javascript   跳转   页面   

原文地址:http://blog.csdn.net/lfcss/article/details/46549429

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!