HTML分页插件功能实现

article/2025/8/14 16:33:05

分页功能实现案例展示如下:在这里插入图片描述

1.先引入css样式和jQuery,再引入分页插件toPage.js,谨记顺序不能乱

<link rel="stylesheet" href="css/toPage.css">
<script src="script/jquery.min.js"></script>
<link rel="stylesheet" href="css/toPage.css">

2.定义两个分页容器的div展示,实际应用时定义一个分页容器即可,这里主要是展示案例所以定义了两个容器,如下:

<!--分页容器_1-->
<div class="page_1"></div>
<!--分页容器_2-->
<div class="page_2"></div>

3.接着我们使用插件写js代码

 <!--插件使用--><script>/*容器1参数*/var obj_1={obj_box:'.page_1',//翻页容器total_item:72//条目总数/*per_num:10,//每页条目数current_page:8//当前页*/};/*容器2参数*/var obj_2={obj_box:'.page_2',//翻页容器total_item:372,//条目总数per_num:20,//每页条目数current_page:8//当前页};/*调用分页方法,初始化数据*/page_ctrl(obj_1);page_ctrl(obj_2);</script>

4.关于如何修改每页展示的内容:在toPage.js里面有一个change_content()方法,请自行修改即可
以下代码解读:定义了ul,li,分页展示:编号,分页条目;最后要记得吧内容绑定到$(obj_box).children(’.page_content’).html下才能展示出来

   function change_content() {/*此处根据项目实际自行编写页面显示内容的方法,举例说明:*/var page_content='<ul style="width: 300px;margin: 10px auto;">';//当前页内容for(var i=0;i<per_num;i++){page_content+='<li>'+((current_page-1)*per_num+i+1)+',分页条目</li>';}page_content+='</ul>';$(obj_box).children('.page_content').html(page_content);}

另外,也可以也可以写ajax来展示分页数据,如下:


function change_content() {$.ajax({type: 'get',url: 'http://xxxx',dataType: "json",data: json_data,error: function (data) {//请求失败时被调用的函数 err_func(data);},success: function (data) {//对数据的各种操作operation(data),返回需要展示的页面内容,//最后绑定到$(obj_box).children('.page_content').html即可展示出来var page_content=operation(data);$(obj_box).children('.page_content').html(page_content);}});
}

我自己制作的小说网站,也使用了该分页功能,感觉不错,值得推荐
也欢迎访问我的小说网站
在这里插入图片描述

完整代码如下:
index.html

<!DOCTYPE html>
<html lang="en">
<head><meta charset="utf-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1"><title>仿淘宝分页插件</title><!--引入分页样式文件--><link rel="stylesheet" href="css/toPage.css">
</head>
<body><h2 style="text-align: center">仿淘宝分页插件,完美兼容ie8,简单处理后可兼容更低版本ie</h2><!--分页容器_1--><div class="page_1"></div><!--分页容器_2--><div class="page_2"></div><!--先引入jquery--><script src="script/jquery.min.js"></script><!--再引入toPage.js--><script src="script/toPage.js"></script><!--插件使用--><script>/*容器1参数*/var obj_1={obj_box:'.page_1',//翻页容器total_item:72//条目总数/*per_num:10,//每页条目数current_page:8//当前页*/};/*容器2参数*/var obj_2={obj_box:'.page_2',//翻页容器total_item:372,//条目总数per_num:20,//每页条目数current_page:8//当前页};/*调用分页方法,初始化数据*/page_ctrl(obj_1);page_ctrl(obj_2);</script>
</body>
</html>

css/toPage.css

.page_ctrl{text-align: center;margin: 10px auto;box-sizing: border-box;
}.page_ctrl *{line-height: 26px;
}.page_ctrl button{margin:0 3px;min-width:30px;background: #ffffff;border: 1px solid #e5e5e5;color: #5e5e5e;cursor: pointer;outline: none;text-align: center;
}.page_ctrl button:hover{background: #0eb0d2;color: #ffffff;
}.page_ctrl .btn_dis{cursor: default;opacity: .7;background: #eeeeee;color: #5e5e5e;
}.page_ctrl .btn_dis:hover{background: #eeeeee;color: #5e5e5e;
}.page_ctrl .current_page{background: #0eb0d2;color: #ffffff;
}.page_ctrl .input_page_num{width:30px;height: 26px;margin:0 3px;padding: 0;text-align: center;background: #ffffff;border: 1px solid #e5e5e5;color: #5e5e5e;outline: none;
}
.page_ctrl .page_total,.page_ctrl .page_text{color: #2b2b2b;font-size: 13px;
}

script/toPage.js

function page_ctrl(data_obj) {var obj_box=(data_obj.obj_box!== undefined)?data_obj.obj_box:function () {return;};//翻页容器dom对象,必要参数var total_item=(data_obj.total_item!== undefined)?parseInt(data_obj.total_item):0;//数据条目总数,默认为0,组件将不加载var per_num=(data_obj.per_num!== undefined)?parseInt(data_obj.per_num):10;//每页显示条数,默认为10条var current_page=(data_obj.current_page!== undefined)?parseInt(data_obj.current_page):1;//当前页,默认为1var total_page=Math.ceil(total_item/per_num);//计算总页数,不足2页,不加载组件if(total_page<2){return;}//在指定容器内加载分页数据$(obj_box).append('<div class="page_content"></div>');//在指定容器内加载分页插件$(obj_box).append('<div class="page_ctrl"></div>');function page_even() {/*加载数据*/function change_content() {/*此处根据项目实际自行编写页面显示内容的方法,举例说明:*/var page_content='<ul style="width: 300px;margin: 10px auto;">';//当前页内容for(var i=0;i<per_num;i++){page_content+='<li>'+((current_page-1)*per_num+i+1)+',分页条目</li>';}page_content+='</ul>';$(obj_box).children('.page_content').html(page_content);}change_content();var inp_val=(current_page==total_page)?1:current_page+1;//跳转页数,input默认显示值var append_html='<button class="prev_page">上一页</button>';for(var i=0;i<total_page-1;i++){if(total_page>8&&current_page>6&&i<current_page-3){if(i<2){append_html+='<button class="page_num">'+(i+1)+'</button>';}else if(i==2){append_html+='<span class="page_dot">•••</span>';}}else if(total_page>8&&current_page<total_page-3&&i>current_page+1){if(current_page>6&&i==current_page+2){append_html+='<span class="page_dot">•••</span>';}else if(current_page<7){if(i<8){append_html+='<button class="page_num">'+(i+1)+'</button>';}else if(i==8){append_html+='<span class="page_dot">•••</span>';}}//append_html+='<span class="page_dot">•••</span>';}else{if(i==current_page-1){append_html+='<button class="page_num current_page">'+(i+1)+'</button>';}else{append_html+='<button class="page_num">'+(i+1)+'</button>';}}}if(current_page==total_page){append_html+='<button class="page_num current_page">'+(i+1)+'</button>';}else{append_html+='<button class="page_num">'+(i+1)+'</button>';}append_html+='<button class="next_page">下一页</button><span class="page_total">共 '+total_page+' 页, 到第</span><input class="input_page_num" type="text" value="'+inp_val+'"><span class="page_text">页</span><button class="to_page_num">确定</button>';$(obj_box).children('.page_ctrl').append(append_html);if(current_page==1){$(obj_box+' .page_ctrl .prev_page').attr('disabled','disabled').addClass('btn_dis');}else{$(obj_box+' .page_ctrl .prev_page').removeAttr('disabled').removeClass('btn_dis');}if(current_page==total_page){$(obj_box+' .page_ctrl .next_page').attr('disabled','disabled').addClass('btn_dis');}else{$(obj_box+' .page_ctrl .next_page').removeAttr('disabled').removeClass('btn_dis');}}page_even();$(obj_box+' .page_ctrl').on('click','button',function () {var that=$(this);if(that.hasClass('prev_page')){if(current_page!=1){current_page--;that.parent('.page_ctrl').html('');page_even();}}else if(that.hasClass('next_page')){if(current_page!=total_page){current_page++;that.parent('.page_ctrl').html('');page_even();}}else if(that.hasClass('page_num')&&!that.hasClass('current_page')){current_page=parseInt(that.html());that.parent('.page_ctrl').html('');page_even();}else if(that.hasClass('to_page_num')){current_page=parseInt(that.siblings('.input_page_num').val());that.parent('.page_ctrl').html('');page_even();}});}

代码放在GitHub上,LoyalWilliams/front-end

我的GitHub


http://chatgpt.dhexx.cn/article/DD17FaQk.shtml

相关文章

java html页面设计_Java实战之html分页设计

分页设计 原则 由于每次要将对应页数所需要的数据在jsp或者html等文件中显示出来&#xff0c;所以要将这些数据封装在一个javabean中 &#xff0c;后台都将查询到的数据导入到对应的javabean对象实例中&#xff0c;我们再将该对象存入request作用域&#xff0c;html或者jsp页面…

html分页效果怎么加,CSS 分页效果制作实例教程

这个教程也包含有实现Flickr、Digg式的简洁分页样式的HTML/CSS代码&#xff0c;随时可以应用于你的WEB项目中。 Update as March 17, 2008:My friends Simone Saveri solved some issuse with IE6 and IE7. Download this tutorial (original) Download this tutorial (Simone …

分页阅读html,html分页

1 (function($, window, document, undefined) { 2 //定义分页类 3 function Paging(element, options) { 4 this.element element; 5 //传入形参 6 this.options { 7 pageNo: options.pageNo||1, 8 totalPage: options.totalPage, 9 totalSize:options.totalSize, 10 callba…

JS实现前端分页

一、HTML部分 <!doctype html> <html> <head><meta charsetutf-8><script src"js/jquery.js"></script><style type"text/css">a{text-decoration: none;}table {border-collapse:collapse;width: 100%;font-s…

html中的分页条怎么写,html如何制作分页

一般的制作页面都会使用到分页&#xff0c;那么你知道分页功能是怎么实现的吗&#xff1f;让我们一起来学习一下html如何制作分页吧。 新建html页面。如图&#xff1a; 在html页面找到body标签&#xff0c;在body标签里新建一个div标签&#xff0c;然后在div标签中新建a标签&am…

html分页功能

&#xff08;代码来源 http://www.xwcms.net/&#xff0c;非原创&#xff01;&#xff09; 1、导入css、js文件 2、根据index.html中的页面进行相应的修改 主要函数实现&#xff08;其中&#xff0c;#exampletable为需要分页的table的id&#xff09; <script type"te…

HTML+CSS实现网页分页页码

直角分页页码实现 <!doctype html> <html> <head> <meta charset"utf-8"> <title>直角分页页码</title> <style type"text/css">/*设置 a 标签的css样式*/.page-normal a{border: 1px solid #ff6500;padding: …

前端 利用html实现分页切换效果

本篇文章主要要实现的功能效果如下&#xff1a; 包含首页 尾页 上一页 下一页 总计的页数以及总计的条数还有跳转的功能 整体思想&#xff1a;先定位一个中心页 上一页、下一页就是根据定位中心页然后加减就可以实现 首页就是要根据一次要展示几页&#xff0c;然后分别展示…

HTML实现分页功能

思路 主要是通过display: block和display: none来实现页面的切换。 将每个页面用一个div包起来&#xff0c;默认第一个页面的样式是display: block&#xff0c;其他页面的样式是display: none&#xff0c;然后通过JavaScript获取鼠标点击事件来隐藏其他页面&#xff0c;显示当…

html+js实现分页功能

1、分页功能实现效果如下&#xff1a; 2、代码如下 <!DOCTYPE html > <html> <head><title> 消息呈现 </title><link rel"icon" href"picture.ico" type"image/x-icon" /><script src"../js/jquer…

阿里云服务器Windows系统搭建Java Web网站教程

一、首先首先搜索阿里云官网&#xff0c;购买服务器 二、 打开控制台-云服务器ECS-实例&#xff0c;先停止运行&#xff0c;再选择更换系统盘&#xff0c;选择带有jdk和tomcat和MySQL的系统镜像安装。 三、 待服务器重启后&#xff0c;打开Windows自带的远程连接软件&#xff0…

关于阿里云Centos服务器搭建Java网站不能访问的问题

转载请注明出处&#xff1a;http://blog.csdn.net/l1028386804/article/details/73864773 首先阿里云提供的手册是没问题的 手工搭建 然后我在地址栏输入服务器地址之后总是提示无法访问&#xff01; 输入命令 netstat -tunlp&#xff0c;80端口确实是在监听&#xff08;这…

【阿里云】基于ECS搭建Java Web开发环境

点击右侧 切换至Web Terminal&#xff0c;执行以下命令&#xff0c;查看yum源中JDK版本。 yum list java* 执行以下命令&#xff0c;使用yum安装JDK1.8。 yum -y install java-1.8.0-openjdk* 执行以下命令&#xff0c;查看是否安装成功。 java -version 如果显示如下图内…

一、申请阿里云服务器及搭建Java开发环境教程 -- 购买阿里云服务器(1)

注&#xff1a;云服务器开发环境如下 &#xff08;CentOS JDK1.7 Mysql ZooKeeper Redis Nginx maven中央库Nexus&#xff09; 一、购买阿里云服务器 1、百度搜索阿里云官网或地址栏输入 https://www.aliyun.com 进入阿里云官网&#xff0c;登录或注册进入&#xff0c;…

阿里云搭建网站

首次搭建个人小站&#xff0c;建议购买域名和服务器到知名商家&#xff0c;比如阿里云&#xff0c;百度云等。因为阿里云绑定了个人淘宝账号&#xff0c;所以成为本人首选&#xff0c;嘿嘿。 购买域名。点击打开http://www.aliyun.com/ 链接地址。并点击右上角的“万网”标记。…

阿里云服务器部署javaweb

1.首先购买服务器和域名 服务器类型选择&#xff1a;云服务器ecs&#xff08;不要选择突发性能型&#xff09;&#xff0c;域名自便&#xff08;注&#xff1a;域名解析需要备案&#xff0c;此类型服务器要求有效期大于三个月才可以备案&#xff09;。 服务器设置&#xff1a…

教你从0开始部署阿里云服务器,阿里云服务器搭建网站教程

教你从0开始部署阿里云服务器&#xff0c;阿里云服务器部署网站的办法&#xff0c;阿里云搭建项目的办法&#xff0c;阿里云服务器搭建网站教程 1.购买 登录官网点击下面链接&#xff1a;阿里云注册链接 查看云服务器购买列表&#xff0c;购买时选择地区、操作系统镜像等&…

阿里云搭建java web

1.首先进入ECS实例&#xff0c;开启实例并且使用XShell连接 2.安装JDK 执行以下命令&#xff0c;查看yum源中JDK版本。 yum list java*执行以下命令&#xff0c;使用yum安装JDK1.8。 yum -y install java-1.8.0-openjdk*执行以下命令&#xff0c;查看是否安装成功。 java …

如何使用阿里云搭建个人网站

国内比较早的几个个人网站有阮一峰、月光博客等。他们都会定期的更新一些文章&#xff0c;阮一峰的更新频率大概在每月4篇&#xff0c;月光博客每天一篇。他们每天的浏览量在2万以上&#xff0c;每月最低收入都在2万以上。作为一个程序员&#xff0c;我一直想给自己找点事情做。…

如何利用阿里云ECS服务器和域名,搭建部署自己的网站(Windows系统)

前言 建站简单方法 提示&#xff1a;以下是本篇文章正文内容&#xff0c;下面案例可供参考 一、购买服务器和域名 根据自己的需求购买相应级别的服务器 示例&#xff1a;ECS共享型n4 二、服务器创建实例和域名备案 详细过程自行百度即可&#xff0c;再此不详细说明&…