zoukankan      html  css  js  c++  java
  • 分页组件

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>无标题文档</title>
    <style>
    a{ margin:5px;}
    </style>
    <script>
    window.onload = function(){

    page({

    id : 'div1',
    nowNum : 7,
    allNum : 30,
    callBack : function(now,all){

    alert('当前页:' + now +',总共页:'+all);

    }

    });

    };

    function page(opt){

    if(!opt.id){return false};

    var obj = document.getElementById(opt.id);

    var nowNum = opt.nowNum || 1;
    var allNum = opt.allNum || 5;
    var callBack = opt.callBack || function(){};
    //首页
    if( nowNum>=4 && allNum>=6 ){

    var oA = document.createElement('a');
    oA.href = '#1';
    oA.innerHTML = '首页';
    obj.appendChild(oA);

    }
    //上一页
    if(nowNum>=2){
    var oA = document.createElement('a');
    oA.href = '#' + (nowNum - 1);
    oA.innerHTML = '上一页';
    obj.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 +']';
    }
    obj.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) +']';
    }
    }
    obj.appendChild(oA);

    }

    }
    //下一页
    if( (allNum - nowNum) >= 1 ){
    var oA = document.createElement('a');
    oA.href = '#' + (nowNum + 1);
    oA.innerHTML = '下一页';
    obj.appendChild(oA);
    }
    //尾页
    if( (allNum - nowNum) >= 3 && allNum>=6 ){

    var oA = document.createElement('a');
    oA.href = '#' + allNum;
    oA.innerHTML = '尾页';
    obj.appendChild(oA);

    }
    //回调函数
    callBack(nowNum,allNum);

    var aA = obj.getElementsByTagName('a');
    //添加 点击 控制每页
    for(var i=0;i<aA.length;i++){
    aA[i].onclick = function(){

    var nowNum = parseInt(this.getAttribute('href').substring(1));

    obj.innerHTML = '';

    page({

    id : opt.id,
    nowNum : nowNum,
    allNum : allNum,
    callBack : callBack

    });
    //阻止页码默认
    return false;

    };
    }

    }
    </script>
    </head>

    <body>
    <div id="div1">
    <!--<a href="#1">首页</a>
    <a href="#3">上一页</a>
    <a href="#2">[2]</a>
    <a href="#3">[3]</a>
    <a href="#4">4</a>
    <a href="#5">[5]</a>
    <a href="#6">[6]</a>
    <a href="#5">下一页</a>
    <a href="#10">尾页</a>-->

    </div>
    </body>
    </html>

  • 相关阅读:
    设计模式----工厂模式
    设计模式----简单工厂
    log4net使用详解
    link/Extended dependency 无法显示连接
    Abp框架之执行Update-Database 命令系列错误
    Index API
    使用Java客户端操作elasticsearch(二)
    elasticsearch之分词插件使用
    使用Java Low Level REST Client操作elasticsearch
    js如何获取隐藏的元素的高度
  • 原文地址:https://www.cnblogs.com/wangjie-001/p/6128893.html
Copyright © 2011-2022 走看看