One Center 4.0 快照

情景:数据条数未知,当点击其中一条时,要取它接近的指定条数的数据(比如当点击第3条时要取7条数据)。但是数据总条数未知,所以需要下面的代码来取这些数据的下标数组

/**
     * 要取数据条数
     * @param total 总共条数
     * @param size  要取条数
     * @param current 当前行的index+1 (从0开始的)
     * @return Array 所需下标数组
     * */
    function getList(total,size,current){//total=7,size=7,current=4,tmp=3
        var retn = [];
        //两侧大小
        var tmp=Math.floor(size/2);
        var left = current-tmp,right=current+tmp;
        /*if(left<=1){
            right+=(1-left);
            left=1;
        }*/
        if(right>=total){
            left-=(right-total);
            right=total;
        }
        for(var i=left;i<=right;++i){
            if(i>0){
                retn.push(i);
            }
        }
        return retn;
    }

 

posted @ 2014-12-28 20:25  过眼云烟之活在当下  阅读(126)  评论(0)    收藏  举报