﻿var vp = function(dModule,iLength){
    this.parent = dModule;
    this.length = iLength||3;
    this.content = null;
    this.count = 0;
    this.page = 1;
    this.init();
}
vp.prototype = {
    insertBar:function(){
        var db = document.createElement("DIV");
        this.parent.appendChild(db);
        db.style.cssText = 'margin:0 auto;text-align:center;line-height:2.5;';
        var dbtn_pre = document.createElement("BUTTON");
        var dbtn_next = document.createElement("BUTTON");
        db.appendChild(dbtn_pre);
        db.appendChild(dbtn_next);
        dbtn_pre.innerHTML = '上一页';
        dbtn_pre.onclick = function(){this.showPage(this.page-1)}.bind(this);
        dbtn_next.innerHTML = '下一页';
        dbtn_next.onclick = function(){this.showPage(this.page+1)}.bind(this);
    },
    showPage:function(iIndex){
        var iIndex = iIndex;
        if(!isNaN(iIndex)){
            if(iIndex<=1) iIndex = 1;
            if(iIndex>=this.count) iIndex = this.count;
            this.page = iIndex;
            var ir = iIndex*this.length-1,il = ir-(this.length-1),oc = this.content;
            for(var i=0,l=oc.length;i<l;i++){
                if(i>=il && i<=ir){
                    oc[i].style.display = '';
                }else{
                    oc[i].style.display = 'none';
                }
            }
        }
    },
    init:function(){
        if(!Function.prototype.bind){
            Function.prototype.bind = function(obj){
                var self = this;
                return function(){
                    self.apply(obj,arguments);
                }
            }
        }
        this.content = this.parent.getElementsByTagName("TABLE");
        this.count = Math.ceil(this.content.length/this.length);
        if(this.count>1){
            var dp = this.parent.getElementsByTagName("P");
            for(var i=0,l=dp.length;i<l;i++){
                dp[i].style.cssText = 'font-size:0;';
            }
            dp = null;
            this.showPage(1);
            this.insertBar();
        }
    }
}
