zoukankan      html  css  js  c++  java
  • 原生js显示分页效果

    <!DOCTYPE html> 
    
    <html> 
    
    <head lang="en"> 
    
    <meta charset="UTF-8"> 
    
    <title>原生js分页</title> 
    
     <style type="text/css"> 
    
     #pageNav { display: inline-block; }
     #pageNav a { display: inline-block; width: 30px; height: 30px; line-height: 30px; text-align: center; color: #000; margin-right: 10px; text-decoration: none; background: #fff; }
     #pageNav a.active, #pageNav a:hover { background: #2176FF; color: #fff; } 
    
     </style>
    </head> 
    
    <body> 
    
    <div id="pageBox"> 
    
    <div id="containet"> 
    
    <ul id="pageMain"> 
    
     <li>这是内容标题 第1条</li> 
    
     <li>这是内容标题 第2条</li> 
    
    <li>这是内容标题 第3条</li> 
    
    <li>这是内容标题 第4条</li> 
    
    <li>这是内容标题 第5条</li> 
    
    <li>这是内容标题 第6条</li> 
    
    </ul> 
    
    </div> 
    
    <span id="prev">上一页</span> 
    
    <ul id="pageNav"></ul> 
    
    <span id="next">下一页</span> 
    
    </div> 
    
    </body> 
    
    </html> 
    
    <script> 
    
     window.onload = function(){
     tabPage({ 
    
     pageMain : 'pageMain', 
    
    pageNav : 'pageNav', 
    
    pagePrev: 'prev', 
    
     pageNext: 'next', 
    
     curNum: 3, //每页显示的条数 
    
    activeClass: 'active', //高光显示的class 
    
     ini: 0 //初始化显示的页面 
    
    });
    function tabPage(tabPage){ 
    
     var pageMain = document.getElementById(tabPage.pageMain); //获取内容列表 
    
    var pageNav = document.getElementById(tabPage.pageNav); //获取分页 
    
    var pagePrev = document.getElementById(tabPage.pagePrev); //上一页 
    
    var pageNext = document.getElementById(tabPage.pageNext); //下一页 
    
    var curNum = tabPage.curNum; //每页显示数 
    
    var len = Math.ceil(pageMain.children.length / curNum); //计算总页数 
    
    var pageList = ''; //生成页码 
    
    var iNum = 0; //当前的索引值index 
    
     for(var i = 0; i < len; i++){ 
    
     pageList+='<a href="javascript:;">'+ ( i + 1)+'</a>'; 
    
    } 
    
     pageNav.innerHTML = pageList;
     pageNav.children[0].className = tabPage.activeClass; //头一页加高亮显示 
    
    for(var i = 0; i < pageNav.children.length; i++){ 
    
     pageNav.children[i].index = i; 
    
     pageNav.children[i].onclick = function(){ 
    
     for(var t = 0; t < pageNav.children.length; t++){ pageNav.children[t].className = ''; } 
    
     this.className = tabPage.activeClass; iNum = this.index; ini(iNum); 
    
     };
    
     }
    //下一页 
    
    pageNext.onclick = function(){ 
    
     if(iNum == len - 1){ alert('已经是最后一页'); return false; }
    
    else{ 
    
     for(var t = 0; t < pageNav.children.length; t++){ pageNav.children[t].className = ''; } 
    
     iNum++; 
    
     pageNav.children[iNum].className = tabPage.activeClass; 
    
     ini(iNum); 
    
     } 
    
     };
    //上一页 
    
    pagePrev.onclick = function(){ 
    
     if(iNum == 0){ alert('当前是第一页'); return false; }
    
    else{ 
    
     for(var t = 0; t < pageNav.children.length; t++){ pageNav.children[t].className = ''; } 
    
    iNum--; 
    
     pageNav.children[iNum].className = tabPage.activeClass; 
    
    ini(iNum); 
    
    } 
    
     };
     function ini(iNum){ 
    
     for(var i = 0; i < pageMain.children.length; i++){ pageMain.children[i].style.display = 'none'; }
     for(var i = 0; i < curNum; i++){ 
    
     if(pageMain.children[(iNum * curNum + i)] == undefined){ continue; } 
    
     pageMain.children[(iNum * curNum + i)].style.display = 'block'; } 
    
     }
     ini(iNum);
     } 
    
    }; 
    
    </script>
    
    // <![CDATA[ window.onload = function(){ tabPage({ pageMain : 'pageMain', pageNav : 'pageNav', pagePrev: 'prev', pageNext: 'next', curNum: 3, //每页显示的条数 activeClass: 'active', //高光显示的class ini: 0 //初始化显示的页面 }); function tabPage(tabPage){ var pageMain = document.getElementById(tabPage.pageMain); //获取内容列表 var pageNav = document.getElementById(tabPage.pageNav); //获取分页 var pagePrev = document.getElementById(tabPage.pagePrev); //上一页 var pageNext = document.getElementById(tabPage.pageNext); //下一页 var curNum = tabPage.curNum; //每页显示数 var len = Math.ceil(pageMain.children.length / curNum); //计算总页数 var pageList = ''; //生成页码 var iNum = 0; //当前的索引值index for(var i = 0; i < len; i++){ pageList+='<a href="javascript:;">'+ ( i + 1)+'</a>'; } pageNav.innerHTML = pageList; pageNav.children[0].className = tabPage.activeClass; //头一页加高亮显示 for(var i = 0; i < pageNav.children.length; i++){ pageNav.children[i].index = i; pageNav.children[i].onclick = function(){ for(var t = 0; t < pageNav.children.length; t++){ pageNav.children[t].className = ''; } this.className = tabPage.activeClass; iNum = this.index; ini(iNum); }; } //下一页 pageNext.onclick = function(){ if(iNum == len - 1){ alert('已经是最后一页'); return false; }else{ for(var t = 0; t < pageNav.children.length; t++){ pageNav.children[t].className = ''; } iNum++; pageNav.children[iNum].className = tabPage.activeClass; ini(iNum); } }; //上一页 pagePrev.onclick = function(){ if(iNum == 0){ alert('当前是第一页'); return false; }else{ for(var t = 0; t < pageNav.children.length; t++){ pageNav.children[t].className = ''; } iNum--; pageNav.children[iNum].className = tabPage.activeClass; ini(iNum); } }; function ini(iNum){ for(var i = 0; i < pageMain.children.length; i++){ pageMain.children[i].style.display = 'none'; } for(var i = 0; i < curNum; i++){ if(pageMain.children[(iNum * curNum + i)] == undefined){ continue; } pageMain.children[(iNum * curNum + i)].style.display = 'block'; } } ini(iNum); } }; // ]]>
  • 相关阅读:
    (转)android头像设置:从本地照片库或拍照获取并剪裁
    获取短信验证码之后按钮背景变化并且出现倒计时
    欢迎界面的下方指示位置圆
    android 关于Toast重复显示解决方法
    判断是不是电话号码
    (转)根据ImageView的大小来压缩Bitmap,避免OOM
    (转)android屏幕适配
    GSON解析JSON
    Linux-命令-cut
    Linux-自疑惑
  • 原文地址:https://www.cnblogs.com/maoyazhi/p/4725110.html
Copyright © 2011-2022 走看看