1、

  1. <div class="pagelist"> <span id="loadmore" class="btn" style="display: block;">加载更多</span> </div>

找到加载更多的按钮,设置好id(最好用id,比较容易遍历)。

2、

  1. <ul id="showajaxnews" style="opacity: 1; top: 0px;">
  2.  
  3. [!--empirenews.listtemp--]<!--list.var1-->[!--empirenews.listtemp--]
  4.  
  5. </ul>

找到列表内容模板的标签,也设置好id。

3、

  1. <script>
  2. $(function () {
  3. var i = 1;
  4. $('#loadmore').click(function () {
  5. $.ajax({
  6. url: '域名/e/action/getmore.php',
  7. type: 'POST',
  8. data: {
  9. "next": i,
  10. 'table': 'news',
  11. 'classid': '[!--self.classid--]', /*这个标签获取的当前id*/
  12. 'action': 'getmorenews',
  13. 'limit': 4,
  14. 'small_length': 120
  15. },
  16. dataType: 'html',
  17. beforeSend: function () {
  18. $("#loadmore").show().html(
  19. '<img src="/images/loaduai.gif" alt="正在努力加载中...');
  20. $('#loadmore').attr('disabled', 'disabled');
  21. },
  22. success: function (data) {
  23. if (data) {
  24. $("#showajaxnews").append(data);
  25. $("#loadmore").removeAttr('disabled');
  26. $("#loadmore").html('点击加载更多');
  27. i++;
  28. } else {
  29. $("#loadmore").show().html("已全部加载完毕!");
  30. $('#loadmore').attr('disabled', 'disabled');
  31. return false;
  32. }
  33. }
  34. });
  35. });
  36. });
  37. </script>

ajax放到加载更多的下边,记得一定要引入Jquery.

4、

下边标红的,我这里做了一个$classid的判断,意思就是当栏目是父栏目7的时候,调用栏目id 8 和 9 的所有数据。按照自己的情景设置即可。

  1. <?php
  2. require('../class/connect.php');
  3. require('../class/db_sql.php');
  4. require('../data/dbcache/class.php');
  5. if ($_POST[action] == 'getmorenews') {
  6. $table = htmlspecialchars($_POST[table]);
  7. if (empty($_POST[orderby])) {
  8. $orderby = 'newstime';
  9. } else {
  10. $orderby = htmlspecialchars($_POST[orderby]);
  11. }
  12. if (empty($_POST[myorder])) {
  13. $myorder = 'desc';
  14. } else {
  15. $myorder = 'asc';
  16. }
  17. if (empty($_POST[limit])) {
  18. $limit = 6;
  19. } else {
  20. $limit = (int) $_POST[limit];
  21. }
  22. if (empty($_POST[classid])) {
  23. $where = null;
  24. } else if ($_POST[classid] == 7) {
  25. $where = 'where classid in("8,9")';
  26. } else {
  27. $where = 'where classid in(' . $_POST[classid] . ')';
  28. }
  29. if (empty($_POST[length])) {
  30. $length = 50;
  31. } else {
  32. $length = (int) $_POST[length];
  33. }
  34. if (empty($_POST[small_length])) {
  35. $small_length = 500;
  36. } else {
  37. $small_length = (int) $_POST[small_length];
  38. }
  39.  
  40. // next:第几页
  41. // table:调用数据表
  42. // limit:每次调用数量
  43. // small_length:简介截取字符数
  44. // length:标题截取字符数
  45. // classid:调用栏目,允许多个,如1,2,3,4 特别注意,必须是调用同一数据表的栏目
  46. // orderby:排序,默认是newstime,传什么就按什么来排序,如 id
  47. // myorder:正反序,默认是asc,传值怎为desc
  48.  
  49. $link = db_connect();
  50. $empire = new mysqlquery();
  51. $num = (int) $_POST['next'] * $limit;
  52.  
  53. if ($table) {
  54. $sql = $empire->query("SELECT * FROM `" . $dbtbpre . "ecms_" . $table . "` $where order by $orderby $myorder limit $num,$limit");
  55.  
  56. while ($r = $empire->fetch($sql)) {
  57.  
  58. if ($r[mtitlepic] == '') {
  59. $r[mtitlepic] = $public_r[news . url] . "e/data/images/notimg.gif";
  60. }
  61. $oldtitle = stripSlashes($r[title]);
  62. $title = sub($oldtitle, '', $length);
  63. $smalltext = stripSlashes($r[smalltext]);
  64. $smalltext = sub($smalltext, '', $small_length);
  65. $classname = $class_r[$r[classid]][classname];
  66. $newsurl = $public_r[newsurl];
  67. $classurl = $newsurl . $class_r[$r[classid]][classpath];
  68. $urls = sys_ReturnBqTitleLink($r);
  69.  
  70. ?>
  71. <!-- 以下代码是显示列表的标签模板 ,按照情景修改即可。-->
  72. <li>
  73. <a href="<?= $urls ?>">
  74. <div class="img">
  75. <img src="<?= $r[titlepic] ?>" class="lazy"></div>
  76. <div class="con">
  77. <h2>
  78. <?= $r[title] ?>
  79. </h2>
  80. <p>
  81. <?= $r[smalltext] ?>
  82. </p>
  83. <span>
  84. <?= date("Y-m-d", $r[newstime]) ?>
  85. </span>
  86. </div>
  87. <div class="more">
  88. <span></span>
  89. </div>
  90. </a>
  91. </li>
  92. <?php
  93. }
  94. }
  95. }
  96. db_close();
  97. $empire = null;
  98. ?>

建立一个getmore.php文件,把上边代码上传到/e/action/文件中

帝国cms 加载更多的实现(父栏目以及子栏目都可以实现)的更多相关文章

  1. 关于Vue中页面(父组件)下拉,页面中的子组件加载更多数据的实现方法

    一个项目中存在很多这种情况:父组件(页面)中的子组件需要做下拉加载更多的需求,但是这个下拉到底部的动作只能通过监控页面(父组件)来完成 这就需要父子组件之间的通信,代码如下: 1. 建立一个用于父子组 ...

  2. mui的上拉加载更多 下拉刷新 自己封装的demo

    ----------------------------------------------- 这是一个非常呆萌的程序妹子,深夜码的丑代码------------------------------- ...

  3. 基于 Vue.js 的移动端组件库mint-ui实现无限滚动加载更多

    通过多次爬坑,发现了这些监听滚动来加载更多的组件的共同点, 因为这些加载更多的方法是绑定在需要加载更多的内容的元素上的, 所以是进入页面则直接触发一次,当监听到滚动事件之后,继续加载更多, 所以对于无 ...

  4. 使用vue之directive设计列表加载更多

    背景 之前写过一篇<纯JS实现加载更多(VUE框架)>,它的逻辑思路比较清晰易懂,而今天看了一天公司项目的部分功能代码,发现同事们写的加载更多的功能更加的有趣,而且易于封装到一个组件当中, ...

  5. 纯JS实现加载更多(VUE框架)

    <template> <div class = 'car_list' reft='scrollobx' @scroll='scrollready($event)'> </ ...

  6. react-native ListView 封装 实现 下拉刷新/上拉加载更多

    1.PageListView 组件封装 src/components/PageListView/index.js /** * 上拉刷新/下拉加载更多 组件 */ import React, { Com ...

  7. vue2.0 自定义 下拉刷新和上拉加载更多(Scroller) 组件

    1.下拉刷新和上拉加载更多组件 Scroller.vue <!-- 下拉刷新 上拉加载更多 组件 --> <template> <div :style="mar ...

  8. Android 实现下拉刷新和上拉加载更多的RECYCLERVIEW和SCROLLVIEW

    PullRefreshRecyclerView.java /** * 类说明:下拉刷新上拉加载更多的RecyclerView * Author: gaobaiq * Date: 2016/5/9 18 ...

  9. mui实现分页上拉加载更多 下拉刷新数据的简单实现 移动端下拉上拉

    空下来把mui上拉加载更多,下拉刷新数据做了一个简单的实现,希望可以帮助到需要的朋友 demo项目的结构 <!DOCTYPE html> <html> <head> ...

随机推荐

  1. 性能测试 | Web端性能测试

    这篇文章想跟大家分享关于Web性能测试的一些知识点.在分享之前,我想先跟大家分享一组数据,关于为什么要做性能测试?具体如下: 71%用户希望在手机上打开网页能跟电脑一样快: 5秒钟被认为是用户能忍受的 ...

  2. jeecg中列表点击单号跳入链接

    效果如图:点击单号,跳到一个新的页面 1.首先列表给一个自定义的js: <t:dgCol title="业务编号"  field="orderCode" ...

  3. matlab将字符串转化为变量的方法

    1.将字符串转化为变量的方法,执行 eval(x) 2.将变量转化为字符串的方法,执行 char(a) 讲解 aa = 98 x = 'aa' 目标:通过x得到98,即x->aa->98, ...

  4. Javah提示未找到 ..的类

    Javah相关错误,如下图所示:

  5. Selenium 2自动化测试实战41(多线程技术)

    多线程技术 python通过两个标准库thread和threading提供对线程的支持.thread提供了低级别的,原始的线程以及一个简单的锁.threading基于Java的线程模型设计. 1.th ...

  6. 堡垒机直接调用RUN

    两个脚本 Run.vbe   参考https://blog.csdn.net/skypeGNU/article/details/12708221 set ws=wscript.createobject ...

  7. Java日志体系(八)最佳实践

    java常用日志框架关系 Log4j 2与Log4j 1发生了很大的变化,Log4j 2不兼容Log4j 1. Logback必须配合Slf4j使用.由于Logback和Slf4j是同一个作者,其兼容 ...

  8. 图解Go协程调度原理,小白都能理解

    阅读本文仅需五分钟,golang协程调度原理,小白也能看懂,超实用. 什么是协程 对于进程.线程,都是有内核进行调度,有CPU时间片的概念,进行抢占式调度.协程,又称微线程,纤程.英文名Corouti ...

  9. git显示不出来图标标志

    git操作的文件夹,发现没有显示出来是否上传的绿色图标,这样导致不清楚哪些文件是否修改,是否上传. 以下方法让我的问题解决了,但我并不知道是不是所有人的问题都适用这种方法,如果你也遇到这种问题,可以尝 ...

  10. 在centos卸载mysql

    1 rpm -qa|grep mysql 查看安装了哪些mysql和lib…… 1 yum remove mysql mysql-server mysql-libs compat-mysql51 删除 ...