自己写的freemarker分页

本文介绍了一种用于网站的分页组件设计思路,详细解释了如何根据不同页面数量显示合适的页码范围,确保用户体验的同时保持良好的交互性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

<div class="globalPage">
    <#if ipage??> 
    <#if totalpage!=0>
      <ul>
      <#if ipage gt 1> 
      <li><a href="javascript:void(0);" onclick="goPrePage();">上一页</a></li>
       <#else> 
        <li><a class="lastNone" href="javascript:void(0);" >上一页</a></li> 
   </#if>
   <#if totalpage gt 8> 
    <#-- like 1 2 3 4 5 ... -->
    <#if ipage lt 4>
    <#list 1..4 as t>
    <#if ipage == t>
    <li><a class="pageChoose" href="javascript:void(0);" onclick="topage(${t})">${t}</a></li>
<#else>
<li><a href="javascript:void(0);" onclick="topage(${t})">${t}</a></li>
</#if>
    </#list>
    <li><a href="javascript:void(0);">...</a></li>
    <li><a href="javascript:void(0);" onclick="topage(${totalpage})">${totalpage}</a></li>
    </#if>
    <#-- like ... 7 8 9 10 11... -->
    <#if (totalpage-ipage) gt 2 && ipage gt 3 >
    <li><a href="javascript:void(0);" onclick="topage(1)">1</a></li>
    <#if ipage == 4>
    <#else>
    <li><a href="javascript:void(0);">...</a></li>
    </#if>
    <#list ipage-2..ipage+2 as t>
    <#if ipage == t>
    <li><a class="pageChoose" href="javascript:void(0);" onclick="topage(${t})">${t}</a></li>
<#else>
<li><a href="javascript:void(0);" onclick="topage(${t})">${t}</a></li>
</#if>
    </#list>
    <#if (totalpage-ipage) == 3>
    <#else>
    <li><a href="javascript:void(0);">...</a></li>
    </#if>
    <li><a href="javascript:void(0);" onclick="topage(${totalpage})">${totalpage}</a></li>
    </#if>
    <#-- like ... 7 8 9 10 11 -->
    <#if totalpage-ipage lt 3>
    <li><a href="javascript:void(0);" onclick="topage(1)">1</a></li>
    <li><a href="javascript:void(0);">...</a></li>
    <#list totalpage-3..totalpage as t>
    <#if ipage == t>
    <li><a class="pageChoose" href="javascript:void(0);" onclick="topage(${t})">${t}</a></li>
<#else>
<li><a href="javascript:void(0);" onclick="topage(${t})">${t}</a></li>
</#if>
    </#list>
    </#if>
   <#-- like 1 2 3 4 5 6 7 -->
<#else>
<#list 1..totalpage as q>
    <#if ipage == q> 
<li><a class="pageChoose" href="javascript:void(0);" onclick="topage(${q})">${q}</a></li>
<#else>
<li><a href="javascript:void(0);" onclick="topage(${q})">${q}</a></li>
</#if>
</#list>
</#if>

       <#if ipage lt totalpage> 
        <li><a class="next" href="javascript:void(0);" onclick="goLastPage();">下一页</a></li> 
   <#else> 
        <li><a class="lastNone" href="javascript:void(0);" >下一页</a></li> 
   </#if>  
      </ul>
      </#if>
      </#if>
    </div>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值