技术文摘

帝国CMS二次开发ajax点击加载更多内容

作者:美文苑   发表于:
浏览:47次    字数:3720  原创
级别: 站长   总稿: 69 篇,  月稿: 0
ajax点击加载更多内容
  1. <!DOCTYPE html> 
  2. <html lang="en"
  3. <head> 
  4.   <meta charset="utf-8"
  5.   <link rel="stylesheet" href="[!--news.url--]skin/listnews/css/listnews.css"
  6. </head> 
  7. <body> 
  8. <div class="main-list"
  9.           <ul id="list"
  10.           </ul> 
  11.           
  12.           <div class="load-more"
  13.             <div class="add-more" style="display: flex"
  14.               <i></i> 
  15.               <span>加载更多</span> 
  16.             </div> 
  17.             <div class="add-ing" style="display: none"
  18.               <i></i> 
  19.               <span>加载中...</span> 
  20.             </div> 
  21.           </div> 
  22.         </div> 
  23.          
  24.          
  25. <script src="[!--news.url--]skin/listnews/js/jquery.min.js"></script> 
  26. <script> 
  27. (function (win, $) { 
  28.   $.listnews = { 
  29.     pageNum: 0, 
  30.     initLoadMore() { 
  31.       let _self = this
  32.       $(".load-more").on('click''.add-more'function () { 
  33.         $(this).css({ display: 'none' }).siblings('.add-ing').css({ display: 'flex' }); 
  34.         _self.pageNum++; 
  35.         _self.initGetData(_self.pageNum); 
  36.         setTimeout(() => { 
  37.           $(this).css({ display: 'flex' }).siblings('.add-ing').css({ display: 'none' }); 
  38.         }, 1000) 
  39.       }) 
  40.     }, 
  41.  
  42.     initGetData(index) { 
  43.       let _this = this
  44.       $.ajax({ 
  45.         url: '[!--news.url--]e/extend/listnews/?page=' + index + '&pageNum=5&classid=13'
  46.         /* 
  47.                 zhuxubai202112 
  48.                 page:分页 
  49.                 pageNum:显示多少数量 
  50.                 classid:栏目ID 
  51.                 */ 
  52.                 type: 'get'
  53.         dataType: 'json'
  54.         success: function (jsonData) { 
  55.           var html = ''
  56.           if (jsonData.info) { 
  57.             jsonData.info.forEach(function (val) { 
  58.               html += `<li class="item"
  59.                 <a href="${val.titleurl}"><p>${val.title}</p><span class="date">${val.newstime}</span></a> 
  60.               </li>`; 
  61.             }) 
  62.             $('#list').append(html); 
  63.           } 
  64.         } 
  65.       }) 
  66.     }, 
  67.  
  68.     init() { 
  69.       this.initGetData(this.pageNum); 
  70.       this.initLoadMore(); 
  71.     } 
  72.   } 
  73.   $.listnews.init(); 
  74. })(window, jQuery) 
  75.     </script> 
  76. </body> 
  77. </html> 
2,css代码
  1. @charset "utf-8"
  2. /*loadMore*/ 
  3. .main-list{ clear:both;} 
  4. .main-list ul li{ clear:bothlist-style:none;} 
  5. .main-list ul li p{ float:left;} 
  6. .main-list ul li span{ float:right;} 
  7. .load-more {clear:both;width100%;margin20px 0;border1px solid #e5e5e5;border-radius: 3px;text-aligncenter;cursorpointer;positionrelative;fontnormal 20px/30px "Microsoft Yahei";color#404040;height60px;} 
  8. .load-more:hover {color#0b6695;border-color#0b6695;} 
  9. .load-more .add-more, .load-more .add-ing {width100%;height100%;display: flex;justify-contentcenter;align-items: center;} 
  10. .load-more .add-more i {displayblock;width20px;height20px;overflowhidden;margin5px 10px;backgroundurl("../images/add_more.png"no-repeat 0 0;font-size40px;font-stylenormal;-webkit-transition: transform .3s;-o-transition: transform .3s;transition: transform .3s;} 
  11. .load-more .add-more:hover i {background-position0 -50px;-webkit-transform: rotate(90deg);-ms-transform: rotate(90deg);-o-transform: rotate(90deg);transform: rotate(90deg);} 
  12. .load-more .add-ing {color#f04343;} 
  13. .load-more .add-ing i {displayblock;width24px;height24px;overflowhidden;margin5px 12px;backgroundurl("../images/add_more.png"no-repeat 0 -100px;font-size40px;-webkit-transform-origin: center;-moz-transform-origin: center;-ms-transform-origin: center;-o-transform-origin: center;transform-origin: center;-webkit-animation: rotateIn .8s linear infinite;-moz-animation: rotateIn .8s linear infinite;-ms-animation: rotateIn .8s linear infinite;-o-animation: rotateIn .8s linear infinite;animation: rotateIn .8s linear infinite;} 
3,index.php
  1. <?php 
  2. require('../../class/connect.php'); //引入数据库配置文件和公共函数文件 
  3. require('../../class/db_sql.php'); //引入数据库操作文件 
  4. require('../../data/dbcache/class.php'); //引入栏目缓存文件 
  5. $link=db_connect(); //连接MYSQL 
  6. $empire=new mysqlquery(); //声明数据库操作类 
  7. $editor=1; //声明目录层次 
  8.  
  9.  
  10. $page=intval($_GET[page]);//分页 
  11. $pageNum=intval($_GET[pageNum]);//显示多少条 
  12. $classid=intval($_GET[classid]);//栏目ID 
  13. $tool=$page*$pageNum
  14.  
  15. $mysql=$empire->query("select * from {$dbtbpre}ecms_news where classid=$classid order by newstime desc limit $tool,$pageNum"); 
  16. while($r=$empire->fetch($mysql))  
  17.     $json_arr[] = array
  18.     "title"=>$r['title'], 
  19.     "id"=>$r['id'], 
  20.     "classid"=>$r['classid'], 
  21.     "newstime"=>date("Y-m-d H:i:s",$r['newstime']), 
  22.     "titleurl"=>$r['titleurl'
  23.     ); //压入数组 
  24.  
  25.  $result=array('info'=>$json_arr,'pageNum'=>$tool); 
  26.  $json=json_encode($result); 
  27.  echo $json
  28.  
  29. db_close(); //关闭MYSQL链接 
  30. $empire=null; //注消操作类变量 
  31. ?> 

【审核人:站长】

收藏   加好友   生成海报   分享
点赞(0)
打赏
Tags: CMS二次开发 帝国

发布者资料

热门文章

技术文摘

查看更多技术文摘
首页
栏目
搜索
会员
投稿