迅睿cms首页及各页面实现ajax瀑布流滚动加载
滚动加载原理是当页面向下滚动时自动加载下一页数据并填充到当前页面,实现无刷新加载。注意如果开启了开发者模式,则加载完后无法显示“已经显示完了”,点击加载更多按钮也无效,关闭开发者模式即可。
引用系统JS函数类文件
将以下引用js代码放到要制作瀑布流的页面head标签内 或 header.html文件的head标签内。
<!-- 系统关键js(放在head标签内,用到了系统函数时必须引用) -->
<script src="{THEME_PATH}assets/js/cms.js" type="text/javascript"></script>
<!-- 系统关键js结束 -->
首页瀑布流滚动加载
创建index_data.html,示例代码如下
{module module=news page=1 pagesize=10 urlrule=index.php}
<div class="">
<a href="{$t.url}">{$t.title}</a>
</div>
{/module}
在index.html中标记显示容器div,示例代码如下
<div class="" id="content_list">
{template "index_data.html"}
</div>
在index.html页面底部写加载的js,代码如下
var Mpage=1;
//滚动显示更多
var scroll_get = true; //做个标志,不要反反复复的加载
$(document).ready(function () {
$(window).scroll(function () {
if (scroll_get==true && (400 + $(window).scrollTop())>($(document).height() - $(window).height())) {
scroll_get = false;
layer.msg('内容加截中,请稍候',{time:1000});
dr_ajax_load_more();
}
});
});
function dr_ajax_load_more(){
Mpage++;
$.get('/index.php?s=api&c=api&m=template&name=index_data.html&format=json&page='+Mpage+'&'+Math.random(),function(res){
$('.footer-cont').hide();
if(res.code==1){
if(res.msg==''){
//这里的判断条件需要结合list_data.html模板来写,否则会出现无限的加载了
layer.msg("已经显示完了",{time:500});
}else{
$('#content_list').append(res.msg);
scroll_get = true;
}
}else{
layer.msg(res.msg,{time:2500});
}
}, 'json');
}
//#content_list就是上一步提到的容器ID
搜索页瀑布流滚动加载
创建search_data.html,示例代码如下
{search module=MOD_DIR id=$searchid total=$sototal order=$params.order catid=$catid page=1 pagesize=10 urlrule=$urlrule}
<div class="">
<a href="{$t.url}">
{$t.title}
</a>
</div>
{/search}
在search.html中标记显示容器div,示例代码如下
<div class="" id="content_list">
{template "search_data.html"}
</div>
在search.html页面底部写加载的js,代码如下
var Mpage=1;
//滚动显示更多
var scroll_get = true; //做个标志,不要反反复复的加载
$(document).ready(function () {
$(window).scroll(function () {
if (scroll_get==true && (400 + $(window).scrollTop())>($(document).height() - $(window).height())) {
scroll_get = false;
layer.msg('内容加截中,请稍候',{time:1000});
dr_ajax_load_more();
}
});
});
function dr_ajax_load_more(){
Mpage++;
$.get('/index.php?s=api&c=api&m=template&name=search_data.html&module={MOD_DIR}&catid={$catid}&searchid={$searchid}&sototal={$sototal}&order={$params.order}&format=json&page='+Mpage+'&'+Math.random(),function(res){
$('.footer-cont').hide();
if(res.code==1){
if(res.msg==''){
$('#is_ajax_btn').hide();
layer.msg("已经显示完了",{time:500});
}else{
$('#content_list').append(res.msg);
scroll_get = true;
}
}else{
layer.msg(res.msg,{time:2500});
}
}, 'json');
}
//#content_list就是上一步提到的容器ID
如果需要加载按钮,参考如下代码
<div class="" id="is_ajax_btn">
<a href="[removed]dr_ajax_load_more();" class="btn default btn-block"> 加载更多 </a>
</div>
栏目页瀑布流滚动加载
创建list_data.html,示例代码如下
{module catid=$catid order=updatetime page=1}
<div class="">
<a href="{$t.url}">
{$t.title}
</a>
</div>
{/module}
在list.html中标记显示容器div,示例代码如下
<div class="" id="content_list">
{template "list_data.html"}
</div>
在list.html页面底部写加载的js,代码如下
var Mpage=1;
//滚动显示更多
var scroll_get = true; //做个标志,不要反反复复的加载
$(document).ready(function () {
$(window).scroll(function () {
if (scroll_get==true && (400 + $(window).scrollTop())>($(document).height() - $(window).height())) {
scroll_get = false;
layer.msg('内容加截中,请稍候',{time:1000});
dr_ajax_load_more();
}
});
});
function dr_ajax_load_more(){
Mpage++;
$.get('/index.php?s=api&c=api&m=template&name=list_data.html&module={MOD_DIR}&catid={$catid}&format=json&page='+Mpage+'&'+Math.random(),function(res){
$('.footer-cont').hide();
if(res.code==1){
if(res.msg==''){
layer.msg("已经显示完了",{time:500});
}else{
$('#content_list').append(res.msg);
scroll_get = true;
}
}else{
layer.msg(res.msg,{time:2500});
}
}, 'json');
}
//#content_list就是上一步提到的容器ID
免责声明:1.凡本站注明“来源:XXX(非老K模板网)”的作品,均转载自其它媒体,所载的文章、图片、音频视频文件等资料的版权归版权所有人所有,如有侵权,请联系laokcms#126.com处理;2.凡本站转载内容仅代表作者本人观点,与老K模板网无关。
相关文档
- pbootcms、dedecms等模板标签正则替换为迅睿cms标...
- 迅睿cms模板如何自定义分页css样式
- 迅睿cms首页及各页面实现ajax瀑布流滚动加载
- 迅睿cms搜索参数单选/多选/下拉字段条件筛选写法
- 使用FancyBox弹出窗口插件实现图片/视频点击弹出层浏览
- 使用VenoBox弹出窗口灯箱插件实现图片相册功能
- 迅睿cms模板循环标签每隔几行几个更换或指定输出特定样式
- 迅睿cms会员登录/注册/退出登录后跳转到指定链接或返回当前页面
- 迅睿cms网站任意页面前端调用全局模块表单提交及自定义样式方法
- 使用JavaScript代码实现页面下滑时顶部导航栏固定跟随页面...
- 为下载的迅睿cms模板前端增加友情链接版块
- 迅睿cms二次开发系统目录结构说明
- 迅睿cms制作模板演示页(给内容创建多个模板和地址)
- 迅睿cms网站后台控制台面板如何添加自定义数据?
- 迅睿cms调用字段敏感信息首尾截取中间隐藏用星号代替
- 迅睿cms使用全局表单制作证书查询功能
- 百度编辑器 UEditor 用 highlight.js 库实现...
- 迅睿cms模块表单制作在线预约报名付款(支持游客免登录支付)
- 迅睿cms读取zip压缩包文件目录结构配合jsTree展示文件树...
- 用jQuery替换文章编辑器里的图片样式及alt标签 实现自定义...
上一篇: 迅睿cms搜索参数单选/多选/下拉字段条件筛选写法
下一篇: 迅睿cms模板如何自定义分页css样式
0 条评论