`

JavaScript小应用之分页算法

阅读更多
效果图:





function getPagination(curPage, pagesize, count) {
    var total = Math.ceil(count/pagesize);
    if (curPage > total) curPage = total;

    var pl = curPage; // pager left  
    var cur_item = "<b>" + pl + "</b>";  
    var nl = 0; // number left  
    while(--pl > 0){  
        cur_item = "<a>" + pl +"</a>" + cur_item;  
        nl++;  
        if(nl >= 2 && pl > 3){ 
            cur_item = "<a>1</a>" + "<i>...</i>" + cur_item;  
            break;  
        }  
    }  

    var pr = curPage; // pager right  
    var nr = 0; // number right
    var mcb = 5; // max continuously button
    while(++pr <= total){  
        cur_item = cur_item + "<a>" + pr +"</a>";  
        nr++;  
        if( (1 + nl + nr) >= mcb && pr < (total -1 )){  
            cur_item = cur_item + "<i>...</i>" + "<a>" + total + "</a>";  
            break;  
        }  
    }  
      
    return cur_item;  
}

console.log(getPagination(1, 10, 8));

console.log(getPagination(1, 10, 18));

console.log(getPagination(4, 10, 188));

console.log(getPagination(8, 10, 188));

console.log(getPagination(17, 10, 188));




测试:


var curPage = 1, pagesize = 8, count = 38;
// <b>1</b><a>2</a><a>3</a><a>4</a><a>5</a>

var curPage = 2, pagesize = 8, count = 38;
// <a>1</a><b>2</b><a>3</a><a>4</a><a>5</a>

var curPage = 5, pagesize = 8, count = 38;
// <a>1</a><a>2</a><a>3</a><a>4</a><b>5</b>



var curPage = 5, pagesize = 8, count = 200;
// <a>1</a><a>2</a><a>3</a><a>4</a><b>5</b><a>6</a><i>...</i><a>25</a>

var curPage = 10, pagesize = 8, count = 200;
// <a>1</a><i>...</i><a>8</a><a>9</a><b>10</b><a>11</a><a>12</a><i>...</i><a>25</a>














-


http://www.frontsurf.com/company/news?page=2

-
  • 大小: 2.4 KB
分享到:
评论

相关推荐

    分页算法 AspNetPager 分页实例 分页sql语句

    分页算法的核心目标是将数据库中的大量数据分割成若干个小的、可管理的部分,每次只加载一部分到前端展示。常见的分页算法有以下几种: 1. **基于RowNum的分页**:在SQL Server中,可以使用ROW_NUMBER()函数结合...

    DREAMWEAVER的分页算法ASP

    ### DREAMWEAVER的分页算法ASP #### 背景介绍 Dreamweaver是一款由Adobe公司开发的专业网页设计工具,它可以帮助开发者快速构建、编辑以及管理网站内容。随着互联网的发展,数据量逐渐增大,如何高效地展示大量...

    可滚动分页算法发,始终显示第一页跟最后一页

    "可滚动分页算法"是为了解决这一问题而设计的一种策略,其核心目标是在用户滚动时始终保持第一页和最后一页可见,这样用户既能快速访问起始数据,又能便捷地跳转到末尾。以下是关于这种算法的详细解释: 1. **分页...

    前端 JavaScript js 联系人 分页

    总的来说,通过JavaScript实现联系人管理和分页显示,需要掌握JavaScript基础、DOM操作、AJAX通信以及分页算法。同时,理解网络协议和选择合适的前端工具也是提高开发效率的关键。在这个过程中,不断学习和实践,...

    分页算法实例

    在IT行业中,分页算法是数据管理与展示中不可或缺的一部分,尤其是在处理大量数据时,它能够提高用户体验并优化系统性能。本实例主要关注C#语言结合前端Bootstrap框架实现的分页功能。 首先,我们来理解分页的基本...

    Angularjs实现分页和分页算法的示例代码

    5. **分页算法**:在本例中,分页算法的核心是计算总页数和当前页码,以及页面的渲染。 ### 分页实现代码解析 #### HTML代码 HTML部分主要负责展示分页的用户界面。具体代码如下: - 使用`&lt;table&gt;`标签显示数据...

    javascript 超炫的分页特效

    JavaScript,作为Web开发中的核心技术之一,允许开发者实现动态交互功能,而分页特效则是这种交互性的一个应用。以下是一些关键的知识点: 1. **DOM操作**:JavaScript通过Document Object Model (DOM)与HTML页面...

    10种JavaScript分页代码

    这些分页代码示例提供了多种实现方式,可以帮助开发者理解和应用JavaScript分页功能。 首先,JavaScript分页的核心原理是通过计算当前页面的数据范围,根据总数据量和每页显示的数量来生成相应的导航链接。当用户...

    Ajax JavaScript jsp 分页效果

    再者,**分页** 的实现涉及到一系列算法和设计决策。例如,需要确定每页显示多少条记录,如何计算总页数,以及如何在用户导航时保持状态。在这个例子中,分页可能通过JavaScript动态生成,根据数据量和每页显示的条...

    javaScript分页

    7. **分页算法**:为了优化用户体验,通常会显示首尾页和当前页附近的页码,而不是所有页码。这种策略称为“跳跃分页”,可以通过算法实现。 8. **交互反馈**:用户在操作分页时,应有明确的反馈,比如禁用不可点击...

    仿淘宝分页按钮效果简单美观易实用当分页JS控件

    本文将深入探讨“仿淘宝分页按钮效果简单美观易实用当分页JS控件”,并围绕相关标签——分页控件、js分页控件、分页按钮算法以及分页算法进行详尽的解释。 首先,我们要理解“分页控件”的概念。分页控件是网页应用...

    分页小程序

    - 数据结构和算法:如分页计算可能涉及的索引和排序算法。 在压缩包“Paging”中,可能包含了以下文件和目录: - index.html:项目的主HTML文件,包含了页面结构和引用的外部资源。 - main.js:主要的JavaScript...

    Jsp.rar_jsp 分页_jsp分页_索引 JavaScript

    综上所述,这个资源包提供了关于JSP分页技术和数据库优化的知识,强调了主键和索引在提高查询效率中的关键作用,并涉及到JavaScript在前端分页中的应用。对于正在学习JSP和数据库管理的开发者来说,这是一个有价值的...

    js无刷新分页

    3. **分页算法**:根据数据量和页面大小,设计合理的分页算法,如每页显示多少条记录,如何计算总页数等。 4. **错误处理**:对于AJAX请求可能出现的错误,如网络问题、服务器错误等,需要有良好的错误处理机制,...

    JS-数据库page分页样式.rar

    1. **分页算法**:JavaScript实现分页的关键在于正确计算和处理页码。这包括确定当前页、总页数,以及根据用户的选择(如每页显示条目数)调整分页状态。分页算法通常涉及到数组切片或分块操作,确保只加载当前页所...

    自定义页面分页标签自定义页面分页标签

    - **分页算法**:计算每页的数据范围,以及如何根据当前页获取正确数据。 - **API设计**:后端需提供支持分页的接口,如接受页码和每页数量作为参数。 - **响应式设计**:确保分页组件在不同设备和屏幕尺寸上都能...

    JS分页源代码,非常详细

    JScript.js可能是一个外部JavaScript文件,包含了具体的分页算法和逻辑。在JavaScript中,实现分页功能可能涉及以下几个关键知识点: 1. 计算总页数:根据数据总数和每页显示的条目数来计算出总的页数。 2. 创建...

    Dom生成表格和实现分页源码

    总结起来,"Dom生成表格和实现分页源码"涉及的核心技术包括DOM操作(创建、插入和删除元素)、数据驱动视图(根据数据动态生成表格)、分页算法(计算页数和处理翻页逻辑)以及事件监听(响应用户分页操作)。...

    Pager(通过的分页工具类)

    分页是一种数据展示策略,将大量数据分成若干小部分,每次只加载和显示一部分,而不是一次性加载所有数据。这样可以减少内存占用,提高页面加载速度,同时使得用户能够更轻松地浏览和管理信息。 设计原则: 1. **...

    accss, mysql asp通用分页自定义分页样式

    总结来说,这个主题涵盖了ASP与数据库的交互、分页算法的实现以及前端样式的定制,对于开发动态网页特别是数据密集型应用有着重要的实践价值。通过理解和运用这些知识点,开发者可以创建出高效、美观且用户体验良好...

Global site tag (gtag.js) - Google Analytics