<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    posts - 7,  comments - 58,  trackbacks - 0

    我的評論

    function $el(el) {
    return document.createElement(el);
    }
    function $ap(p, n) {
    p = p || document;
    p.appendChild(n);
    }
    function $id(_id) {
    return document.getElementById(_id);
    }
    (function(){
    var _style = $el("link");
    _style.href = "jpage.css";
    _style.rel = "stylesheet";
    _style.type = "text/css";
    document.getElementsByTagName("HEAD").item(0).appendChild(_style);

    })();

    /**
    * fun: 實現ajax分頁效果
    * 參數說明:c 分頁控件顯示的容器ID,一般用DIV的ID
    * recordCount: 總記錄數
    * service 請求分頁數據的js方法指針,分頁控件負責回調, 原型 function fun(curPage, pageSize) {....}
    */
    function JPage(c, recordCount, service, pageSize, group) {
    this._c = $id(c);
    this.pageSize = pageSize || 10; //一頁幾條
    this.pageCount = (recordCount % this.pageSize) == 0? (recordCount / this.pageSize): parseInt((recordCount / this.pageSize) + 1); //總頁數
    this.service = service; //回調方法
    this.group = group || 11; //一組幾頁
    this.pageData = new Array(this.group); //當前要顯示的頁對象索引緩存區
    this.curPage = 1; // 初始化為第一頁為當前頁
    var that = this;
    this.pageEvt = function(thePg) {
    this.curPage = thePg;
    this.service(this.curPage, this.pageSize);
    this.render();
    };
    this.render = function() {
    this._c.innerHTML = "";
    if(recordCount == 0) return;
    this.createFirstPage();
    this.readData(); //準備分頁索引
    this.createPrePage();
    this.createPages();
    this.createNextPage();
    this.createEndPage();
    };
    this.createEndPage = function() {
    var _span = $el("span");
    var epg = new FEPg(this, this.pageCount, "EndCssClass"); //最后一頁
    $ap(_span, epg.getView());
    $ap(this._c, _span);
    };
    this.createFirstPage = function() {
    var _span = $el("span");
    var fpg = new FEPg(this, 1, "FirstCssClass"); //首頁
    $ap(_span, fpg.getView());
    $ap(this._c, _span);
    };
    this.createPages = function() {
    for(var n = 0; n < this.group; n++) {
    if(this.pageData[n] == -2) break; //
    var _span = $el("span");
    var _page = new Pg(this, this.pageData[n]);
    $ap(_span, _page.getView());
    $ap(this._c, _span);
    }
    };
    this.createPrePage = function() {
    var preSpan = $el("span");
    var prePage = new PrePg(this, this.curPage - 1);
    $ap(preSpan, prePage.getView());
    $ap(this._c, preSpan);
    };
    this.createNextPage = function() {
    var nextSpan = $el("span");
    var nextPage = new NextPg(this, this.curPage + 1);
    $ap(nextSpan, nextPage.getView());
    $ap(this._c, nextSpan);
    };
    this.readData = function() {
    for(var i = 0; i < this.group; i++) this.pageData[i] = -2;
    var firstIndex = (this.pageCount <= this.group || this.curPage <= parseInt(this.group / 2))? 1: this.curPage - parseInt(this.group / 2);
    if(firstIndex > this.pageCount) return;
    this.pageData[0] = firstIndex;
    for(var n = 1; n < this.group; n++) {
    if(this.pageData[n-1] >= this.pageCount) break;
    this.pageData[n] = this.pageData[n-1] + 1;
    }
    };
    this.render();
    }

    /**
    * fun: 頁模型基類
    * 參數說明:owner分頁對象,the 當前頁索引, pre 上一頁索引, _next 下一頁索引, vtxt 顯示文本(用于“上一頁”及“下一頁”)
    */
    function Pg(owner, the, vtxt) {
    this._owner = owner;
    this._self = the;
    this._vtxt = vtxt || the;
    this._view = $el("a");
    this._view.innerHTML = this._vtxt;
    var that = this;
    this.getView = function() {
    if(this._self == this._owner.curPage) {this._view.className = "activePage"; return this._view; }
    this._view.href = "javascript:;";
    this._view.onclick = function() {
    that._owner.pageEvt(that._self); //回傳點中的頁對象頁索引
    }
    return this._view;
    };

    this.getMe = function() {
    return this._self;
    };

    }

    /**
    * fun: Pg子類"上一頁“類模型
    */
    function PrePg(owner, the, vtxt) {
    this._super = Pg;
    this._super(owner, the, " "); //當前頁為第一頁時,the為0
    var that = this;

    this.getView = function() {
    if(this._self == 0) { this._view.className = "NoView"; return this._view; } //如果當前頁為第一頁,不創建上一頁對象視圖
    this._view.href = "javascript:;";
    this._view.onclick = function() {
    that._owner.pageEvt(that._self); //回傳點中的頁對象頁索引
    }
    this._view.className = "PreCssClass";
    return this._view;
    };

    }

    /**
    * fun: Pg子類"下一頁”類模型
    */
    function NextPg(owner, the, vtxt) {
    this._super = Pg;
    this._super(owner, the, " ");
    var that = this;

    this.getView = function() {
    if(this._self == this._owner.pageCount + 1) { this._view.className = "NoView"; return this._view; } //如果當前頁為第一頁,不創建上一頁對象視圖
    this._view.href = "javascript:;";
    this._view.onclick = function() {
    that._owner.pageEvt(that._self); //回傳點中的頁對象頁索引
    }
    this._view.className = "NextCssClass";
    return this._view;
    };
    }

    /**
    * fun: 第一頁及最后一頁類模型
    */
    function FEPg(owner, the, _class) {
    this._super = Pg;
    this._super(owner, the, " ");
    var that = this;
    this.getView = function() {
    if(this._owner.pageCount == 0) { return this._view; } //如果當前頁為第一頁,不創建上一頁對象視圖
    this._view.href = "javascript:;";
    this._view.onclick = function() {
    that._owner.pageEvt(that._self); //回傳點中的頁對象頁索引
    }
    this._view.className = _class;
    return this._view;
    }
    }
    <2025年5月>
    27282930123
    45678910
    11121314151617
    18192021222324
    25262728293031
    1234567

    常用鏈接

    留言簿(3)

    隨筆分類

    隨筆檔案

    文章分類

    相冊

    收藏夾

    博客好友

    搜索

    •  

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 青娱分类视频精品免费2| 亚洲夜夜欢A∨一区二区三区| 亚洲a一级免费视频| WWW国产成人免费观看视频| 国产在线98福利播放视频免费| 亚洲情A成黄在线观看动漫软件| 久久久久免费看成人影片| 亚洲AV午夜福利精品一区二区 | 亚洲va乱码一区二区三区| 亚洲一区免费在线观看| 亚洲国产成人久久三区| 国内免费高清在线观看| 亚洲AV色欲色欲WWW| 亚洲国产av无码精品| 人妻免费一区二区三区最新| 亚洲av中文无码乱人伦在线r▽ | 亚洲一区免费观看| 亚洲一区二区三区四区在线观看| 中文字幕免费在线观看| 亚洲an日韩专区在线| 国产免费人人看大香伊| 成在线人免费无码高潮喷水| 亚洲色图国产精品| 在线精品免费视频无码的| 免费精品国产自产拍在线观看| 亚洲色成人WWW永久网站| 亚洲黄色免费电影| 亚洲AV无码一区二区三区电影| 亚洲狠狠爱综合影院婷婷| 男人进去女人爽免费视频国产| 亚洲最新中文字幕| 四虎永久在线精品视频免费观看| 国产高潮流白浆喷水免费A片 | 亚洲第一福利网站| 日韩免费视频一区| 成人久久免费网站| 亚洲老熟女五十路老熟女bbw| 国产午夜亚洲不卡| 成人无码区免费A片视频WWW | 日韩电影免费在线观看中文字幕| 亚洲H在线播放在线观看H|