zoukankan      html  css  js  c++  java
  • JavaScript分页栏链接转变算法

    window.onload = function(){
        var para = {pagecount: 9, curpage: 5};
        var pageBar = document.getElementById("pageBar");
        pageBar.innerHTML = createPageBar(para);
    };
    
    function getPage(id){
        id = parseInt(id);
        var pageBar = document.getElementById("pageBar");
        pageBar.innerHTML = createPageBar({pagecount: 9, curpage: id});
    }
    
    function createPageBar(para){
        var i;
        var pageBarStr = '<div>';
        if(para.pagecount < 8){
            for(i = 1; i <= para.pagecount; i++){
                pageBarStr += '<a href="javascript:;" onclick="getPage(this.innerHTML)">'
                + i
                +'</a>';
            }
        }else if(para.pagecount == 8){
            if(para.curpage < 5){
                for(i = 1; i < 7; i++){
                    pageBarStr += '<a href="javascript:;" onclick="getPage(this.innerHTML)">'
                        + i
                        +'</a>';
                }
                pageBarStr += '...<a href="javascript:;" onclick="getPage(this.innerHTML)">8</a>';
            }else{
                pageBarStr += '<a href="javascript:;" onclick="getPage(this.innerHTML)">1</a>...';
                for(i = 3; i <= 8; i++){
                    pageBarStr += '<a href="javascript:;" onclick="getPage(this.innerHTML)">'
                        + i
                        +'</a>';
                }
            }
        }else{ //pagecount > 8
            if(para.curpage < 5){
                for(i = 1; i < 7; i++){
                    pageBarStr += '<a href="javascript:;" onclick="getPage(this.innerHTML)">'
                        + i
                        +'</a>';
                }
                pageBarStr += '...<a href="javascript:;" onclick="getPage(this.innerHTML)">'
                    + para.pagecount
                    +'</a>';
            }else if(para.curpage > para.pagecount - 4){
                pageBarStr += '<a href="javascript:;" onclick="getPage(this.innerHTML)">1</a>...';
                for(i = para.pagecount - 5; i <= para.pagecount; i++){
                    pageBarStr += '<a href="javascript:;" onclick="getPage(this.innerHTML)">'
                    + i
                    +'</a>';
                }
            }else{
                pageBarStr += '<a href="javascript:;" onclick="getPage(this.innerHTML)">1</a>...';
                for(i = para.curpage - 2; i < para.curpage + 3; i++){
                    pageBarStr += '<a href="javascript:;" onclick="getPage(this.innerHTML)">'
                    + i
                    +'</a>';
                }
                pageBarStr += '...<a href="javascript:;" onclick="getPage(this.innerHTML)">'
                + para.pagecount
                +'</a>';
            }
        }
        
        pageBarStr += '</div>';
        return pageBarStr;
    };
    

      

  • 相关阅读:
    1、线性DP 198. 打家劫舍
    1、线性DP 354. 俄罗斯套娃信封问题
    127. 单词接龙
    1. 线性DP 887. 鸡蛋掉落 (DP+二分)
    200. 岛屿数量
    1. 线性DP 152. 乘积最大子数组
    1. 线性DP 53. 最大子序和.
    1. 线性DP 120. 三角形最小路径和
    如何在RHEL 8上安装Python 3
    在Ubuntu 20.04 LTS Focal Fossa上安装Drupal
  • 原文地址:https://www.cnblogs.com/realwall/p/2178861.html
Copyright © 2011-2022 走看看