织梦dedecms列表页实现无限加载的教程

很多朋友在建站过程中尤其是新闻类以及图片类网站,需要用到列表无限加载,下面就告诉大家如何实现这个功能,而且又不影响列表静态页的生成。

我们需要用到Jquery.load()方法来请求下一页达到列表页无限加载的效果。下面是具体的代码:
列表页简单的dom结构代码:

<divclass="list"> <ul> <li><ahref="">列表简单的dom结构</a></li> </ul> </div>

分页按钮样式:

<!--data-catid的值为当前栏目iddata-list是当前模版列表特殊样式--> <divclass="list_next"data-catid="{dede:field.id/}"data-list=""> <ahref="javascript:;">下一页</a></div> <divclass="list_load"></div>

JS请求的代码如下:

<scripttype="text/javascript"> varcatid=$(".list_next").data("catid");//获取栏目id varcur_list=$(".list_next").data("list")=="列表样式2"?"列表样式2":".list";//列表样式 varnext_no=2;//分页数 varpath_arr=window.location.pathname.split("/"); varfile=path_arr[path_arr.length-1]; if(file!="index.html"&&file!=""){next_no=parseInt(file.split(".")[0].split("-")[1])+1;} $(".list_nexta").click(function(){ var_this=$(this); _this.html("正在加载中...");//给定按钮临时加载状态 $(".list_load").load("./"+catid+"-"+next_no+".html?now="+newDate().getTime()+""+cur_list+"ul",function(data,status){ if(status=="success"){ if($(".list_load").html().indexOf("li")<0){ _this.html("没有更多内容了"); _this.css("background-color","#888"); _this.unbind("click");}else{ _this.html("下一页"); $(cur_list+"ul").append($(".list_loadul").html()); next_no++;} }else{ _this.html("没有更多内容了"); _this.css("background-color","#888"); _this.unbind("click");}});}); </script>

代码就基本上完成了,这里需要注意一下,模板里面必须要引入jquery库文件,另外catid和next_no不能为空。大家赶快自己试试吧!

评论0

请先

没有账号? 忘记密码?
'); })();