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;
    };
    

      

  • 相关阅读:
    flume+kafka+storm打通过程
    kafka入门
    hive执行更新和删除操作
    redis存储对象与对象序列化详解
    语音常识--语音信号的数字模型
    声源测向: TDOA-GCC-PATH方法
    【面试】如何比较一个类型【模板使用】【sizeof用法】
    【概括】C++11/14特性
    【面试】编译器为我们实现了几个类成员函数?(c++)
    语音信号处理常识【摘抄|自用】
  • 原文地址:https://www.cnblogs.com/realwall/p/2178861.html
Copyright © 2011-2022 走看看