jquery 实现分页组件

news/2024/7/10 23:07:00 标签: jquery, javascript, ecmascript

jquery_HTML_0">jquery 实现分页组件,完整的HTML

<!DOCTYPE html>
<html lang="en">

<head>
  <meta charset="UTF-8">
  <title>page插件演示</title>
  <style>
    * {
      margin: 0;
      padding: 0;
    }

    #containet {
      display: table;
      border: 2px solid #ff0000;
      padding: 20px;
      margin: 0 auto;
      border-radius: 4px;
      background: cornsilk;
    }

    #pageMain li {
      list-style: none;
      line-height: 40px;
    }

    #pageBox {
      padding: 10px 0 0 0;
    }

    #pageBox span {
      display: inline-block;
      width: 60px;
      height: 30px;
      line-height: 30px;
      text-align: center;
      color: #fff;
      background: #08a586;
      border: 1px solid;
      border-radius: 6px;
      font-size: 14px;
      cursor: pointer;
    }

    #pageNav {
      display: inline-block;
      padding: 0 8px;
    }

    #pageNav a {
      display: inline-block;
      width: 30px;
      height: 30px;
      line-height: 30px;
      text-align: center;
      color: #3a87ad;
      margin: 0 6px;
      border-radius: 4px;
      text-decoration: none;
    }

    #pageNav a.active,
    #pageNav a:hover {
      background: #3a87ad;
      color: #EFEFEF;
    }

    #prev:hover {
      cursor: pointer;
    }

    #next:hover {
      cursor: pointer;
    }
  </style>
</head>

<body>
  <div id="containet">
    <ul id="pageMain">
      <li>这是内容标题 第1</li>
      <li>这是内容标题 第2</li>
      <li>这是内容标题 第3</li>
      <li>这是内容标题 第4</li>
      <li>这是内容标题 第5</li>
      <li>这是内容标题 第6</li>
      <li>这是内容标题 第7</li>
      <li>这是内容标题 第8</li>
      <li>这是内容标题 第9</li>
      <li>这是内容标题 第10</li>
      <li>这是内容标题 第11</li>
      <li>这是内容标题 第12</li>
      <li>这是内容标题 第13</li>
      <li>这是内容标题 第14</li>
      <li>这是内容标题 第15</li>
      <li>这是内容标题 第16</li>
    </ul>
    <div id="pageBox">
      <span id="prev">上一页</span>
      <ul id="pageNav"></ul>
      <span id="next">下一页</span>
    </div>
  </div>


  <script src="http://libs.baidu.com/jquery/1.10.2/jquery.min.js"></script>

  <script type="text/javascript">javascript">
    $(function () {
      tabPage({
        pageMain: '#pageMain',
        pageNav: '#pageNav',
        pagePrev: '#prev',
        pageNext: '#next',
        curNum: 7, /*每页显示的条数*/
        activeClass: 'active', /*高亮显示的class*/
        ini: 0/*初始化显示的页面*/
      });
      function tabPage(tabPage) {
        var pageMain = $(tabPage.pageMain);
        /*获取内容列表*/
        var pageNav = $(tabPage.pageNav);
        /*获取分页*/
        var pagePrev = $(tabPage.pagePrev);
        /*上一页*/
        var pageNext = $(tabPage.pageNext);
        /*下一页*/


        var curNum = tabPage.curNum;
        /*每页显示数*/
        var len = Math.ceil(pageMain.find("li").length / curNum);
        /*计算总页数*/
        console.log(len);
        var pageList = '';
        /*生成页码*/
        var iNum = 0;
        /*当前的索引值*/

        for (var i = 0; i < len; i++) {
          pageList += '<a href="javascript:;">' + (i + 1) + '</a>';
        }
        pageNav.html(pageList);
        /*头一页加高亮显示*/
        pageNav.find("a:first").addClass(tabPage.activeClass);

        /*******标签页的点击事件*******/
        pageNav.find("a").each(function () {
          $(this).click(function () {
            pageNav.find("a").removeClass(tabPage.activeClass);
            $(this).addClass(tabPage.activeClass);
            iNum = $(this).index();
            $(pageMain).find("li").hide();
            for (var i = ($(this).html() - 1) * curNum; i < ($(this).html()) * curNum; i++) {
              $(pageMain).find("li").eq(i).show()
            }

          });
        })


        $(pageMain).find("li").hide();
        /************首页的显示*********/
        for (var i = 0; i < curNum; i++) {
          $(pageMain).find("li").eq(i).show()
        }


        /*下一页*/
        pageNext.click(function () {
          $(pageMain).find("li").hide();
          if (iNum == len - 1) {
            alert('已经是最后一页');
            for (var i = (len - 1) * curNum; i < len * curNum; i++) {
              $(pageMain).find("li").eq(i).show()
            }
            return false;
          } else {
            pageNav.find("a").removeClass(tabPage.activeClass);
            iNum++;
            pageNav.find("a").eq(iNum).addClass(tabPage.activeClass);
            //                    ini(iNum);
          }
          for (var i = iNum * curNum; i < (iNum + 1) * curNum; i++) {
            $(pageMain).find("li").eq(i).show()
          }
        });
        /*上一页*/
        pagePrev.click(function () {
          $(pageMain).find("li").hide();
          if (iNum == 0) {
            alert('当前是第一页');
            for (var i = 0; i < curNum; i++) {
              $(pageMain).find("li").eq(i).show()
            }
            return false;
          } else {
            pageNav.find("a").removeClass(tabPage.activeClass);
            iNum--;
            pageNav.find("a").eq(iNum).addClass(tabPage.activeClass);
          }
          for (var i = iNum * curNum; i < (iNum + 1) * curNum; i++) {
            $(pageMain).find("li").eq(i).show()
          }
        })
      }
    })
  </script>
</body>

</html>

http://www.niftyadmin.cn/n/5264495.html

相关文章

[已解决]HttpMessageNotReadableException: JSON parse error: Unexpected character:解析JSON时出现异常的问题分析与解决方案

&#x1f337;&#x1f341; 博主 libin9iOak带您 Go to New World.✨&#x1f341; &#x1f984; 个人主页——libin9iOak的博客&#x1f390; &#x1f433; 《面试题大全》 文章图文并茂&#x1f995;生动形象&#x1f996;简单易学&#xff01;欢迎大家来踩踩~&#x1f33…

Android Studio Git Invocation failed Unexpected end of file from server

Invocation failed Unexpected end of file from server 解决办法&#xff0c;勾选以下内容

[Unity]关于Unity接入Appsflyer并且打点支付

首先需要去官方下载Appsflyer的UnityPackage 链接在这afPackage 然后导入 导入完成 引入此段代码 using AppsFlyerSDK; using System.Collections; using System.Collections.Generic; using UnityEngine;public class AppflysManager : MonoBehaviour {public static App…

02基于matlab的卡尔曼滤波

基于matlab的卡尔曼滤波&#xff0c;可更改状态转移方程&#xff0c;控制输入&#xff0c;观测方程&#xff0c;设置生成的信号的噪声标准差&#xff0c;设置状态转移方差Q和观测方差R等参数&#xff0c;程序已调通&#xff0c;需要直接拍下。

C++ Qt开发:ProgressBar进度条组件

Qt 是一个跨平台C图形界面开发库&#xff0c;利用Qt可以快速开发跨平台窗体应用程序&#xff0c;在Qt中我们可以通过拖拽的方式将不同组件放到指定的位置&#xff0c;实现图形化开发极大的方便了开发效率&#xff0c;本章将重点介绍ProgressBar进度条组件的常用方法及灵活运用。…

亚马逊云科技助力泡泡玛特快速部署全球弹性资源,打造国潮出海文化

企业全球化的终极目标就是品牌出海。1978年伴随着改革开放&#xff0c;中国企业开始放眼望世界输出中国产品&#xff0c;经过多年锤炼后&#xff0c;中国企业如TCL、泡泡玛特在不同的行业重塑版图&#xff0c;对外输出中国品牌&#xff0c;赢得了全球市场&#xff0c;中国企业实…

2023-12-14 使用Qt画一条曲线(AI辅助)

点击 <C 语言编程核心突破> 快速C语言入门 使用Qt画一条曲线 前言一、Qchart简介二、代码总结 前言 要解决问题: 有一个函数, 生成一些点, 想画一条曲线. 想到的思路: 这个用Qchart比较简单. 其它的补充: 需要稍许配置 一、Qchart简介 QChart是Qt中的一个图表控件&a…

智能优化算法应用:基于狮群算法3D无线传感器网络(WSN)覆盖优化 - 附代码

智能优化算法应用&#xff1a;基于狮群算法3D无线传感器网络(WSN)覆盖优化 - 附代码 文章目录 智能优化算法应用&#xff1a;基于狮群算法3D无线传感器网络(WSN)覆盖优化 - 附代码1.无线传感网络节点模型2.覆盖数学模型及分析3.狮群算法4.实验参数设定5.算法结果6.参考文献7.MA…