读书人

仿百度、google分页的兑现

发布时间: 2012-09-04 14:19:30 作者: rapoo

仿百度、google分页的实现

?

?????? 前段时间写了个仿百度、google分页,现在和大家分享一下。大家有什么问题可以和我交流。

??? 首先我们分析一下google的分页情况:(百度也是一样的,这里只写google的情况)

?

??? 下面给出大家一段java代码,好让大家往下容易理解。

?仿百度、google分页的兑现仿百度、google分页的兑现

    当前页是1????????显示的是:?1 2 3 4 5 6 7 8 9 10

    ?

    仿百度、google分页的兑现

    当前页是2???? 起始值1? 未页 11 ?

    ?

    ?仿百度、google分页的兑现

    ?

    ?

    ?当前页是3???? 起始值1? 未页 12

    仿百度、google分页的兑现

    ?

    ?

    ?当前页是4???? 起始值1? 未页 13

    ?

    以此类推:...

    ?

    从上图得知:

    ?

    ?? ?当前页小于等于11时? 起始页为1? 末页=当前页+9

    ?

    ?仿百度、google分页的兑现仿百度、google分页的兑现
      ?仿百度、google分页的兑现仿百度、google分页的兑现

        ??????????? 当前页是12??????? 起始值是2??? 未页 21

        ?

        ?仿百度、google分页的兑现

        ?

        ?

        ??????????? 当前页是13??????? 起始值是3??? 未页 22

        ?

        仿百度、google分页的兑现

        ?

        ???????????? 当前页是14??????? 起始值是4?? 未页 23

        ?

        从上图得知 当前页大于11时?

        ?? 1.当前页与尾页的差少9??? 开始索引与当前页 差10?

        ?

        ?仿百度、google分页的兑现仿百度、google分页的兑现
          ?仿百度、google分页的兑现仿百度、google分页的兑现
            ?仿百度、google分页的兑现仿百度、google分页的兑现
              ?仿百度、google分页的兑现仿百度、google分页的兑现
                //?计算索引位置 ??if?(this.nowpage?<=?sumindex/2+1)?{ ?? ????this.startindex?=?1; ?? ????this.endindex?=?this.nowpage?+?sumindex/2-1; ?? ???????????? ??????//当结束的索引值>总页数 ?? ????if(this.endindex>this.countpage){ ?? ????????this.endindex=this.countpage; ?? ????} ??}else?if(this.nowpage>sumindex/2+1){ ?? ????this.startindex=this.nowpage-sumindex/2; ?? ????????????this.endindex=this.nowpage+sumindex/2-1;???? ?? ????//当结束的索引值>总页数 ?? ????//当结束的索引值>索引的sum值?代表的是?google页面中最大显示页数 ?? ????if?? (this.endindex>this.countpage&&this.endindex>this.sumindex){ ?? ????????????????this.endindex=this.countpage; ?? ????????????????this.startindex=this.countpage-sumindex-1; ?? ????} ??????//当结束的索引值<索引的sum值?代表的是?google页面中最大显示页数 ?? ????if(this.endindex<this.sumindex){ ?? ????this.startindex?=?1; ?? ????this.endindex?=?this.countpage; ?? ????????????????} ??}??

读书人网 >软件架构设计

热点推荐