基于jQuery实现点击列表加载更多效果


Posted in Javascript onMay 31, 2016

本文实例为大家分享了jQuery点击加载更多效果的具体代码,供大家参考,具体内容如下

<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  <title>jquery showMore 显示更多</title>
  <script type="text/javascript" src="js/jquery-1.8.3.js"></script>
  <script type="text/javascript" src="js/jquery.showMore.js"></script>
</head>
<body>
  <ul class="showMoreNChildren" pagesize="5">
    <li>a</li>
    <li>b</li>
    <li>c</li>
    <li>d</li>
    <li>e</li>
    <li>f</li>
    <li>g</li>
    <li>h</li>
    <li>i</li>
    <li>j</li>
    <li>k</li>
    <li>m</li>
    <li>a</li>
    <li>b</li>
    <li>c</li>
    <li>d</li>
    <li>e</li>
    <li>f</li>
    <li>g</li>
    <li>h</li>
    <li>i</li>
    <li>j</li>
    <li>k</li>
    <li>m</li>
  </ul>
 
  <ul class="mynews" pagesize="4">
    <li>news 11</li>
    <li>news 12</li>
    <li>news 13</li>
    <li>news 14</li>
    <li>news 21</li>
    <li>news 22</li>
    <li>news 23</li>
    <li>news 24</li>
    <li>news 31</li>
    <li>news 32</li>
    <li>news 33</li>
    <li>news 34</li>
  </ul>
 
  <script type="text/javascript">
    //调用显示更多插件。参数是标准的 jquery 选择符 
    $.showMore(".showMoreNChildren,.mynews");
  </script>
</body>
</html>
JavaScript code
 
(function () {
  var showMoreNChildren = function ($children, n) {
    //显示某jquery元素下的前n个隐藏的子元素
    var $hiddenChildren = $children.filter(":hidden");
    var cnt = $hiddenChildren.length;
    for (var i = 0; i < n && i < cnt ; i++) {
      $hiddenChildren.eq(i).show();
    }
    return cnt - n;//返回还剩余的隐藏子元素的数量
  }
 
  jQuery.showMore = function (selector) {
    if (selector == undefined) { selector = ".showMoreNChildren" }
    //对页中现有的class=showMorehandle的元素,在之后添加显示更多条,并绑定点击行为
    $(selector).each(function () {
      var pagesize = $(this).attr("pagesize") || 10;
      var $children = $(this).children();
      if ($children.length > pagesize) {
        for (var i = pagesize; i < $children.length; i++) {
          $children.eq(i).hide();
        }
 
        $("<div class='showMorehandle' >显示更多</div>").insertAfter($(this)).click(function () {
          if (showMoreNChildren($children, pagesize) <= 0) {
            //如果目标元素已经没有隐藏的子元素了,就隐藏“点击更多的按钮条”
            $(this).hide();
          };
        });
      }
    });
  }
})();

以上就是本文的全部内容,希望对大家的学习有所帮助。

Javascript 相关文章推荐
javascript 表单验证常见正则
Sep 28 Javascript
JQuery FlexiGrid的asp.net完美解决方案 dotNetFlexGrid-.Net原生的异步表格控件
Sep 12 Javascript
jquery实现用户打分评分特效
May 28 Javascript
js获取时间精确到秒(年月日)
Mar 16 Javascript
bootstrap实现图片自动轮播
Dec 21 Javascript
canvas时钟效果
Feb 16 Javascript
Three.js开发实现3D地图的实践过程总结
Nov 20 Javascript
jQuery实现的上传图片本地预览效果简单示例
Mar 29 jQuery
layui表单验证select下拉框实现验证的方法
Sep 05 Javascript
layui table动态表头 改变表格头部 重新加载表格的方法
Sep 21 Javascript
vue 导航守卫和axios拦截器有哪些区别
Dec 19 Vue.js
vue-resource 拦截器interceptors使用详解
Jan 18 Vue.js
浅谈JavaScript 执行环境、作用域及垃圾回收
May 31 #Javascript
页面get请求 中文参数方法乱码问题的快速解决方法
May 31 #Javascript
Bootstrap表单布局样式代码
May 31 #Javascript
jQuery使用经验小技巧(推荐)
May 31 #Javascript
JavaScript知识点总结(十)之this关键字
May 31 #Javascript
JavaScript知识点总结(六)之JavaScript判断变量数据类型
May 31 #Javascript
JavaScript知识点总结(五)之Javascript中两个等于号(==)和三个等于号(===)的区别
May 31 #Javascript
You might like
PHP 远程关机实现代码
2009/11/10 PHP
php使用unset()删除数组中某个单元(键)的方法
2015/02/17 PHP
PHP快速排序quicksort实例详解
2016/09/28 PHP
PHP 实现手机端APP支付宝支付功能
2018/06/07 PHP
浅谈laravel 5.6 安装 windows上使用composer的安装过程
2019/10/18 PHP
javascript:void(0)的真正含义实例分析
2008/08/20 Javascript
javascript 动态生成私有变量访问器
2009/12/06 Javascript
JQuery获取浏览器窗口内容部分高度的代码
2012/02/24 Javascript
JavaScript String.replace函数参数实例说明
2013/06/06 Javascript
浅谈JavaScript之事件绑定
2013/07/08 Javascript
Google Dart编程语法和基本类型学习教程
2013/11/27 Javascript
javascript使用正则控制input输入框允许输入的值方法大全
2014/06/19 Javascript
Nodejs中调用系统命令、Shell脚本和Python脚本的方法和实例
2015/01/01 NodeJs
JavaScript操作XML文件之XML读取方法
2015/06/09 Javascript
解决WordPress使用CDN后博文无法评论的错误
2015/12/15 Javascript
JavaScript仿微博发布信息案例
2016/11/16 Javascript
vue高德地图之玩转周边
2017/06/16 Javascript
微信小程序页面滑动屏幕加载数据效果
2020/11/16 Javascript
js Date()日期函数浏览器兼容问题解决方法
2017/09/12 Javascript
JS实现DOM节点插入操作之子节点与兄弟节点插入操作示例
2018/07/30 Javascript
vue动态绑定class选中当前列表变色的方法示例
2018/12/19 Javascript
Nodejs使用archiver-zip-encrypted库加密压缩文件时报错(解决方案)
2019/11/18 NodeJs
[01:03:37]Secret vs VGJ.S Supermajor小组赛C组 BO3 第二场 6.3
2018/06/04 DOTA
[16:01]夜魇凡尔赛茶话会 第二期01:你比划我猜
2021/03/11 DOTA
Python编程实现的简单Web服务器示例
2017/06/22 Python
python操作MySQL 模拟简单银行转账操作
2017/09/27 Python
Python cookbook(数据结构与算法)将序列分解为单独变量的方法
2018/02/13 Python
安装python时MySQLdb报错的问题描述及解决方法
2018/03/20 Python
python提取图像的名字*.jpg到txt文本的方法
2018/05/10 Python
详解python selenium 爬取网易云音乐歌单名
2019/03/28 Python
深入了解Python装饰器的高级用法
2020/08/13 Python
如何Tkinter模块编写Python图形界面
2020/10/14 Python
HTML5+CSS3网页加载进度条的实现,下载进度条的代码实例
2016/12/30 HTML / CSS
机械工程及其自动化专业求职信
2014/08/08 职场文书
求职自我评价范文100字
2014/09/23 职场文书
详解使用 CSS prefers-* 规范提升网站的可访问性与健壮性
2021/05/25 HTML / CSS