js+css实现的简单易用兼容好的分页

这里是“js+css实现的简单易用兼容好的分页”的完整攻略:

什么是分页

分页指的是将大量数据分成多个页面,每次只显示其中的一部分数据,通过点击下一页或上一页来切换页面。常见的应用包括商城商品列表、新闻列表等。

分页的实现

HTML

首先,我们需要在HTML页面中添加分页的DOM结构。一般来说,分页的结构包含上一页、下一页、页码数等元素。

<div class="pagination">
  <a href="#" class="prev-page">上一页</a>
  <ul class="page-list">
    <li class="page-item active">1</li>
    <li class="page-item">2</li>
    <li class="page-item">3</li>
    <li class="page-item">4</li>
    <li class="page-item">5</li>
  </ul>
  <a href="#" class="next-page">下一页</a>
</div>

CSS

接下来,我们需要为分页元素添加CSS样式以及交互动效。这里提供一组简单易用兼容好的分页样式:

.pagination {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 20px;
}
.pagination a, .pagination li {
  display: inline-block;
  padding: 5px 15px;
  margin-right: 5px;
  font-size: 14px;
  color: #444;
  border: 1px solid #ddd;
  border-radius: 3px;
  text-decoration: none;
  transition: all .3s ease-in-out;
}
.pagination li.active {
  color: #fff;
  background-color: #1abc9c;
  border-color: #1abc9c;
}
.pagination a:hover, .pagination li:hover {
  color: #fff;
  background-color: #1abc9c;
  border-color: #1abc9c;
}
.pagination li:first-child, .pagination li:last-child {
  margin-right: 0;
}

JavaScript

最后,我们需要在JavaScript中实现分页的交互功能。这里提供一组简单易用兼容好的分页代码:

// 获取分页元素
const pagination = document.querySelector('.pagination');
const prevBtn = pagination.querySelector('.prev-page');
const nextBtn = pagination.querySelector('.next-page');
const pageList = pagination.querySelector('.page-list');
const pageItems = pageList.querySelectorAll('.page-item');

// 当前页码
let currentPage = 1;

// 设置下一页事件
nextBtn.addEventListener('click', () => {
  if (currentPage < pageItems.length) {
    currentPage++;
    updatePagination();
  }
});

// 设置上一页事件
prevBtn.addEventListener('click', () => {
  if (currentPage > 1) {
    currentPage--;
    updatePagination();
  }
});

// 设置页码点击事件
pageItems.forEach((item, index) => {
  item.addEventListener('click', () => {
    currentPage = index + 1;
    updatePagination();
  });
});

// 更新分页元素状态
function updatePagination() {
  pageItems.forEach((item, index) => {
    if (index === currentPage-1) {
      item.classList.add('active');
    } else {
      item.classList.remove('active');
    }
  });
}

这个区域通过显示5个页码数和上一页、下一页链接组成了一个分页组件。可以通过上述JavaScript代码实现JS对分页组件的控制,保证分页组件在点击上一页和下一页时、页码数的点击时样式和数据随之改变。

示例说明

示例1:商城商品列表分页

假设我们正在开发一个电商网站,在商品列表页面需要使用分页功能。我们可以使用上述代码,在HTML页面中添加相应的DOM结构和CSS样式,然后使用JS来控制分页组件的交互功能。

当用户点击上一页、下一页或页码数时,JS会根据当前的页码数切换到对应的页面,同时也会更新分页组件的样式以提示用户当前所在页面。

示例2:新闻列表分页

又假设我们正在开发一个新闻网站,在新闻列表页面同样需要使用分页功能。我们可以复制上述代码,在HTML页面中添加相应的DOM结构和CSS样式,然后使用JS来控制分页组件的交互功能。

同样地,当用户点击上一页、下一页或页码数时,JS会根据当前的页码数切换到对应的页面,同时也会更新分页组件的样式以提示用户当前所在页面。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:js+css实现的简单易用兼容好的分页 - Python技术站

(0)
上一篇 2023年6月16日
下一篇 2023年6月16日

相关文章

  • 详解如何把cmd黑窗口把java文件打包成jar

    下面我为你详细讲解如何把cmd黑窗口把java文件打包成jar: 什么是Jar文件 Java ARchive文件是Java平台独立的软件包格式,它包含Java Class文件、META-INF目录等资源,可以方便地被Java虚拟机(JVM)和相关的开发工具所识别。 如何将Java文件打包成Jar 第一步:编写Java代码 首先,你需要编写Java代码,并确保…

    Java 2023年5月26日
    00
  • jsp中获得路径的两种方法和获得url路径的方法(推荐)

    JSP中获得路径的两种方法 在JSP中,我们需要经常获取文件或路径相关的信息,下面就介绍两种获取路径的方法: 方法一: <% String path1 = request.getSession().getServletContext() .getRealPath(""); out.println(path1); %> 这种方法…

    Java 2023年6月15日
    00
  • SpringBoot实现在webapp下直接访问html,jsp

    下面详细讲解如何在SpringBoot中配置,使得可以在webapp目录下直接访问HTML、JSP等静态资源。 1. Maven依赖 在pom.xml文件中添加以下依赖: <dependency> <groupId>org.springframework.boot</groupId> <artifactId>s…

    Java 2023年5月20日
    00
  • Java线程池ThreadPoolExecutor原理及使用实例

    Java线程池ThreadPoolExecutor原理及使用实例 1. 线程池ThreadPoolExecutor的工作原理 线程池ThreadPoolExecutor是Java中常用的一个多线程处理工具。其主要特点是在应用程序启动时预先创建线程池中的一定数量的线程,在应用程序运行时,将需要执行的任务放到线程池中,线程池中的线程依次执行这些任务。线程池负责监…

    Java 2023年5月26日
    00
  • 各种格式的编码解码工具类分享(hex解码 base64编码)

    各种格式的编码解码工具类分享 1. hex解码工具类 Hex是一种用16进制表示二进制数据的编码方式,我们可以通过Hex解码工具将16进制字符串转换成二进制数据。 以下是实现Hex解码的代码示例: public class HexUtil { /* * 将16进制字符串转换为byte数组 */ public static byte[] hex2Bytes(S…

    Java 2023年5月20日
    00
  • SpringMVC编程使用Controller接口实现控制器实例代码

    在 SpringMVC 中,控制器是用于处理 Web 请求的组件。SpringMVC 提供了多种方式来实现控制器,其中一种方式是使用 Controller 接口。本文将详细讲解如何使用 Controller 接口实现控制器,包括编写控制器、处理请求、返回响应等。 编写控制器 要使用 Controller 接口实现控制器,我们需要编写一个类,并实现 Contr…

    Java 2023年5月18日
    00
  • Java防锁屏小程序代码实例

    下面是本篇文章的完整攻略,包含代码实例示范: Java防锁屏小程序代码实例 介绍 在使用电脑或手机时,为了保护设备的安全和隐私,一般会设置屏幕锁定,一段时间不使用后,屏幕就会进入锁屏状态,需要再次输入密码才能解锁使用。但是,在某些情况下,我们可能需要自动保持设备屏幕的常亮状态,以展示某些信息,为此,我们需要编写防锁屏的小程序。 本文将介绍如何使用Java编写…

    Java 2023年5月23日
    00
  • 深入理解spring多数据源配置

    下面是详细讲解“深入理解Spring多数据源配置”的完整攻略: 1. Spring多数据源配置介绍 Spring多数据源配置是指在一个应用程序中配置多个数据库,实现数据的读写分离、负载均衡等功能的技术。下面我们来详细介绍Spring多数据源的配置步骤。 2. Spring多数据源配置步骤 2.1 创建数据源配置类 在Java项目中,我们需要首先创建一个数据源…

    Java 2023年5月20日
    00
合作推广
合作推广
分享本页
返回顶部