今天在cms大学小编在Github上闲逛,发现了一个名为Infinite AJAX Scroll的开源项目,使用它来通过很简单的程序配置,就可以让帝国cms支持分页Ajax下拉无限加载功能。专程进行了测试,发现非常简单好用,这里分享给大家。
第一步:首先下载jquery-ias.min.js(下载地址)。
第二步:将 jquery-ias.min.js 文件放到网站根目录下的/js/文件夹,也就是路径为 /js/jquery-ias.min.js 。
第三步:在需要进行无限加载的页面,插入如下配置代码,这是插件运行的必要参数。
折叠JavaScript 代码
- <script src="http://apps.bdimg.com/libs/jquery/1.9.1/jquery.min.js"></script>
- <script src="/js/jquery-ias.min.js"></script>
- <script>
- var ias = $.ias({
- container: "#container",
- item: ".scroll",
- pagination: "#epages",
- next: ".next"
- });
- ias.extension(new IASSpinnerExtension());
- ias.extension(new IASNoneLeftExtension({html: '<div class="blank20"></div><div style="text-align:center"><p><em>后面已经没有数据了</em></p></div>'}));
- </script>
第四步:在需要无限加载的页面所属列表模板中,写入以下代码,这里要注意容器id和容器class类的对应,否则会出错。
折叠PHP 代码
- <div id="container">
- <ul class="scroll">
- [!--empirenews.listtemp--]
- <!--list.var1-->
- [!--empirenews.listtemp--]
- <span class="blank20"></span>
- </ul>
- </div>
- <span class="blank20"></span>
- <div id="epages">
- [!--show.listpage--]
- </div>
第五步:打开 /e/class/t_functions.php 文件,在第129行(帝国cms7.2UTF8版本),或搜索以下代码
折叠PHP 代码
- $nextpage=' <a href="'.$nextpagelink.'">'.$fun_r['nextpage'].'</a>';
替换为
折叠PHP 代码
- $nextpage=' <a href="'.$nextpagelink.'" class="next">'.$fun_r['nextpage'].'</a>';
到这里就结束了,快试试无限加载的效果吧!
另外还有一点需要补充,如果页面上启用了Lazyload懒加载插件,在第二页开始之后的页面图片会造成加载不出来,在配置参数中加入下面的代码即可解决:
折叠JavaScript 代码
- ias.on('rendered',function(items){
- $("img.lazy").lazyload({effect:"fadeIn"});//这里是你调用Lazyload的代码
- })