pafination官网自制

news2024/11/26 11:58:00

1.pafination.js

参考element ui 中 prev表示上一页,next为下一页

// const itemsPerPage = 10;
// const totalItems = 30;
var itemsPerPage ;
var totalItems ;
let currentPage = 1;
var pagerCount=5 // 设置最大页码按钮数
var totalPages = Math.ceil(totalItems / itemsPerPage);

// function updatePagination() {
//   const pagination = document.querySelector('.pagination');
//   const pageNumbers = pagination.querySelectorAll('li');

//   for (let i = 0; i < pageNumbers.length; i++) {
//     const pageNumber = parseInt(pageNumbers[i].querySelector('a').textContent);
//     if (pageNumber === currentPage) {
//       pageNumbers[i].classList.add('active');
//     } else {
//       pageNumbers[i].classList.remove('active');
//     }
//   }

//   const prevButton = pagination.querySelector('.prev');
//   const nextButton = pagination.querySelector('.next');
//   prevButton.style.display = currentPage === 1 ? 'none' : 'inline-block';
//   nextButton.style.display = currentPage === totalPages ? 'none' : 'inline-block';
// }

function createPagination(totalPages, currentPage) {
  let pageHtml = " <li class='prev'><a href='#'><</a></li>";
  let startPage, endPage;

  if (totalPages <= pagerCount) {
    startPage = 1;
    endPage = totalPages;
  } else {
    const halfPager = Math.floor(pagerCount / 2);
    if (currentPage <= halfPager) {
      startPage = 1;
      endPage = pagerCount;
    } else if (currentPage + halfPager >= totalPages) {
      startPage = totalPages - pagerCount + 1;
      endPage = totalPages;
    } else {
      startPage = currentPage - halfPager;
      endPage = currentPage + halfPager;
    }
  }

  if (startPage > 1) {
    pageHtml += " <li class='page-item'><a href='#'>1</a></li>";
    if (startPage > 2) {
      pageHtml += " <li class='dots' style='font-weight: bold;font-size: 20px;color: #C68F00;line-height: 50px;'>...</li>";
    }
  }

  for (let i = startPage; i <= endPage; i++) {
    if (i === currentPage) {
      pageHtml += ` <li class='page-item active'><a href='#'>${i}</a></li>`;
    } else {
      pageHtml += ` <li class='page-item'><a href='#'>${i}</a></li>`;
    }
  }

  if (endPage < totalPages) {
    if (endPage < totalPages - 1) {
      pageHtml += " <li class='dots' style='font-weight: bold;font-size: 20px; color: #C68F00; line-height: 50px;'>...</li>";   //设置style示例
    }
    pageHtml += ` <li class='page-item'><a href='#'>${totalPages}</a></li>`;
  }

  pageHtml += " <li class='next'><a href='#'>></a></li>";
  document.querySelector('#page').innerHTML = pageHtml;
}

document.addEventListener('click', function(event) {
  const target = event.target;
  if (target.tagName.toLowerCase() === 'a') {
    if (target.textContent === '<') {
      currentPage = Math.max(currentPage - 1, 1);
    } else if (target.textContent === '>') {
      currentPage = Math.min(currentPage + 1, totalPages);
    } else {
      currentPage = parseInt(target.textContent);
    }
    getList(currentPage - 1);
    // updatePagination();
    createPagination(totalPages, currentPage); // 更新分页
  }
});

2.pafination.html

 <ul id="page">
     <!-- <li class="prev"><a href="#"><</a></li>
     <li class="page-item active"><a href="#">1</a></li>
     <li class="page-item active"><a href="#">2</a></li>
     <li class="page-item active"><a href="#">3</a></li>
     <li class="next"><a href="#">></a></li> -->
 </ul>

3.pafination.css

.pagination {
    display: flex;
    justify-content: center;
  }
  .pagination ul {
    list-style-type: none;
    display: inline-block;
  }
  .pagination li {
    display: inline-block;

  }
  .pagination a{
    display: inline-block;
    width: 50px;
    height: 50px;
    background: #FFFFFF;
    text-align: center;
    font-weight: bold;
    font-size: 20px;
    color: #C68F00;
    line-height: 50px;
    border: 1px solid rgba(198, 143, 0, 0.56);
  }
  .pagination a:hover{
    background-color: #C68F00;
    color: #fff;
  }
  .prev,
  .next {
    font-weight: bold;
  }
  .prev a,
  .next a {
    color: #C68F00;
    text-decoration: none;
  }
  .active a {
    background-color: #C68F00;
    color: #fff;
  }

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1875762.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Flutter循序渐进==>封装、继承、多态、抽象类以及属性修改

导言 新学一门编程语言&#xff0c;最难以理解的莫过于类了。如果类没用&#xff0c;也就算了&#xff0c;它偏偏很有用&#xff0c;我们必须得掌握&#xff0c;不然怎么好意思说自己会面向对象编程呢? 抽象类&#xff08;Abstract Class&#xff09;在面向对象编程中扮演着…

前后端分离项目面试总结

一&#xff1a;是否登录状态 服务端登录的时候&#xff0c;给分配一个session用于存储数据&#xff0c;同时将sessionID返回给浏览器&#xff0c;浏览器通过cookie把sessionID存储起来&#xff0c;下次访问时携带上&#xff0c;服务端就可以通过sessionID来确定用户是否登录。 …

uview文本框组件计数count报错u--textarea

报错内容&#xff1a; [Vue warn]: Error in render: “TypeError: Cannot read property ‘length’ of null” found in —> at uni_modules/uview-ui/components/u-textarea/u-textarea.vue at uni_modules/uview-ui/components/u–textarea/u–textarea.vue mp.runtime.…

Flutter循序渐进==>基金管理APP首页

目录 查看版本 组件 组件源码学习 做个基金APP首页源代码 效果 查看版本 组件 组件的本质就是个类。 import package:flutter/material.dart;void main() {runApp(const OurFirstApp(),); } OurFirstApp()实例化&#xff0c;就是给runApp用的&#xff0c;runApp就是运行实…

Java的NIO体系

目录 NIO1、操作系统级别下的IO模型有哪些&#xff1f;2、Java语言下的IO模型有哪些&#xff1f;3、Java的NIO应用场景&#xff1f;相比于IO的优势在哪&#xff1f;4、Java的IO、NIO、AIO 操作文件读写5、NIO的核心类 :Buffer&#xff08;缓冲区&#xff09;、Channel&#xff…

用GPT-4纠错GPT-4 OpenAI推出CriticGPT模型

根据OpenAI周四&#xff08;6月27日&#xff09;发布的新闻稿&#xff0c;该公司新推出了一个基于GPT-4的模型——CriticGPT&#xff0c;用于捕获ChatGPT代码输出中的错误。CriticGPT的作用相当于让人们用GPT-4来查找GPT-4的错误。该模型可以对ChatGPT响应结果做出批评评论&…

Echarts地图实现:山东省报考人数

Echarts地图实现&#xff1a;山东省报考人数 效果预览 设计思路 数据可视化&#xff1a;选择地图作为数据展示的方式&#xff0c;可以直观地展示山东省不同城市的报考人数分布。交互性&#xff1a;通过ECharts的交互功能&#xff0c;如提示框&#xff08;tooltip&#xff09;…

Redis 7.x 系列【11】数据类型之位图(Bitmap)

有道无术&#xff0c;术尚可求&#xff0c;有术无道&#xff0c;止于术。 本系列Redis 版本 7.2.5 源码地址&#xff1a;https://gitee.com/pearl-organization/study-redis-demo 文章目录 1. 概述2. 基本命令2.1 SETBIT2.2 GETBIT2.3 BITCOUNT2.4 BITPOS2.5 BITFIELD2.6 BITF…

二叉搜索数的最小绝对差-二叉树

需要用到中序遍历 中序遍历 94. 二叉树的中序遍历 - 力扣&#xff08;LeetCode&#xff09; 递归 class Solution { public:vector<int> inorderTraversal(TreeNode* root) {vector<int> res;inoder(root,res);return res;}void inoder(TreeNode* root , vector…

从零开始搭建spring boot多模块项目

一、搭建父级模块 1、打开idea,选择file–new–project 2、选择Spring Initializr,选择相关java版本,点击“Next” 3、填写父级模块信息 选择/填写group、artifact、type、language、packaging(后面需要修改)、java version(后面需要修改成和第2步中版本一致)。点击“…

计算机Java项目|基于SpringBoot的新闻稿件管理系统

作者主页&#xff1a;编程指南针 作者简介&#xff1a;Java领域优质创作者、CSDN博客专家 、CSDN内容合伙人、掘金特邀作者、阿里云博客专家、51CTO特邀作者、多年架构师设计经验、腾讯课堂常驻讲师 主要内容&#xff1a;Java项目、Python项目、前端项目、人工智能与大数据、简…

数据结构历年考研真题对应知识点(数组和特殊矩阵)

目录 3.4数组和特殊矩阵 3.4.2数组的存储结构 【二维数组按行优先存储的下标对应关系(2021)】 3.4.3特殊矩阵的压缩存储 【对称矩阵压缩存储的下标对应关系(2018、2020)】 【上三角矩阵采用行优先存储的应用(2011)】 【三对角矩阵压缩存储的下标对应关系(2016)】 3.4.…

PyTorch Tensor进阶操作指南(二):深度学习中的关键技巧

本文主要讲tensor的裁剪、索引、降维和增维 Tensor与numpy互转、Tensor运算等&#xff0c;请看这篇文章 目录 9.1、首先看torch.squeeze()函数&#xff1a; 示例9.1&#xff1a;&#xff08;基本的使用&#xff09; 小技巧1&#xff1a;如何看维数 示例9.2&#xff1a;&a…

优化数据库字段使用位运算-php语言示例

背景&#xff1a;一个会员有三个状态&#xff0c;A、B、C&#xff0c;其中一个人可以为 A、B、C、AB&#xff1b;之前数据表结构加了三个字段is_a、is_b、is_c; 本人实在不想这样粗糙的实现需求&#xff0c;遂决定用位运算优化。 上代码&#xff1a; 位运算可以用来处理状态值…

业务代码插件式开发实践

在学习编程初期&#xff0c;会接触到设计模式的概念&#xff1a;23种设计模式&#xff0c;单例模式&#xff0c;策略模式&#xff0c;… 。接触业务研发后&#xff0c;对设计模式的使用和实践有了更深的见解。 使用设计模式是目的为了更高效的支撑业务诉求&#xff0c;如何在保…

【面试干货】Object 类中的公共方法详解

【面试干货】Object 类中的公共方法详解 1、clone() 方法2、equals(Object obj) 方法3、hashCode() 方法4、getClass() 方法5、wait() 方法6、notify() 和 notifyAll() 方法 &#x1f496;The Begin&#x1f496;点点关注&#xff0c;收藏不迷路&#x1f496; 在 Java 中&#…

高频面试题基本总结回顾1(含笔试高频算法整理)

干货分享&#xff0c;感谢您的阅读&#xff01; &#xff08;暂存篇---后续会删除&#xff0c;完整版和持续更新见高频面试题基本总结回顾&#xff08;含笔试高频算法整理&#xff09;&#xff09; 备注&#xff1a;引用请标注出处&#xff0c;同时存在的问题请在相关博客留言…

如何使用飞书快捷指令无感记账,ios版

总结 很多人无法长期坚持记账&#xff0c;主要是每次消费需要打开手机软件&#xff0c;一系列繁琐的操作&#xff0c;导致过程中可能就忘了。 今天给大家带来飞书自动记账。 演示视频 点击查看&#xff1a;https://www.douyin.com/video/7312857946382241063 安装 下载快捷…

【机器学习300问】135、决策树算法ID3的局限性在哪儿?C4.5算法做出了怎样的改进?

ID3算法是一种用于创建决策树的机器学习算法&#xff0c;该算法基于信息论中的信息增益概念来选择最优属性进行划分。信息增益是原始数据集熵与划分后数据集熵的差值&#xff0c;熵越小表示数据集的纯度越高。有关ID3算法的详细步骤和算法公式在我之前的文章中谈到&#xff0c;…

临时文件上传系统Plik

什么是 Plik &#xff1f; Plik 是一个基于 Go 语言的可扩展且用户友好的临时文件上传系统&#xff08;类似于 Wetransfer&#xff09;。 软件主要特点&#xff1a; 强大的命令行客户端易于使用的 Web 用户界面多个数据后端&#xff1a;文件、OpenStack Swift、S3、Google Clo…