站长之家 - 站长资讯 - 易采站长站

当前位置: > 建站教程 > 源码教程 > CMS 教程 >

帝国cms首页、自定义页面如何实现分页

2016-01-05 19:37 | 来源:易采源码网 | 编辑:秋军 |

帝国cms首页以及自定义页面如何实现分页,添加如下js代码即可

<!doctype html>
<html>
<head>
<meta charset="gb2312">
<title>www.yangqq.com</title>
<meta name="keywords" content="" />
<meta name="description" content="" />
<script src="page.js"></script>
</head>
<body>
<ul id="list" style="display:none;">
[e:loop={'selfinfo',10,0,0}]
<li><a href="<?=$bqsr[titleurl]?>" title="<?=$bqr[title]?>" ></li> 
[/e:loop]
</ul>
<ul id="list2"></ul><script src="page2.js"></script>
</body>
</html>
第一段JS
<!--
var ETNGpager = function( srcName, dstName, cntPP, cntPS )
{
this.srcName = srcName;
this.dstName = dstName;
this.curP   = 1;//默认当前页为第一页
this.cntPP   = cntPP || 2;//默认每页两条纪录
this.cntPS   = cntPS || 3;//默认每页显示5个分页上下文
this.items   = [];
this.showPNP = true;/*显示上下页链接*/
this.showType = true;/*滑动分页*/
this.result   = {pagedata:[],pagebar:'',limit:[0,0],report:''};
this.parse();/*总纪录数*/
}
ETNGpager.prototype.page = function (){
this.cntP = Math.ceil(this.cntR/this.cntPP);/*总页数*/
this.cntS = Math.ceil(this.cntP/this.cntPS);/*总段数*/
this.curS = Math.ceil(this.curP/this.cntPS);/*当前段*/
this.preP = this.curP -1;/*上一页*/
this.nextP = this.curP +1;/*下一页*/
this.preS = this.curS -1;/*上一段*/
this.nextS = this.curS +1;/*下一段*/
this.startR = (this.curP -1)*this.cntPP + 1;/*起始纪录*/
this.endR = (this.curP*this.cntPP >this.cntR)?this.cntR:this.curP*this.cntPP;/*结束纪录*/
this.result['pagedata']=[];
if(this.showType){
this.perSide = Math.floor(this.cntPS/2);
this.startP   = (this.curP > this.perSide)?(this.curP - this.perSide):1;
this.endP   = (this.startP + this.cntPS)>this.cntP?this.cntP:(this.startP + this.cntPS);
}else{
this.startP   = (this.curS-1)*this.cntPS+1;
this.endP   = (this.curS*this.cntPS>this.cntP)?this.cntP:(this.curS*this.cntPS);
}
for(var i = this.startP;i<=this.endP;i++){
this.result['pagedata'].push((i==this.curP)?'<a  href="#" class="curPage">'+i+'</a>':'<a  href="#" onclick="page('+i+')">'+i+'</a>');
}
if(this.showPNP){
if(this.curP>1)this.result['pagedata'].unshift('<a  href="#" onclick="page('+(this.curP-1)+')">上一页</a>');
if(this.curP<this.cntP)this.result['pagedata'].push('<a  href="#" onclick="page('+(this.curP+1)+')">下一页</a>');
}
this.result['pagebar'] = this.result['pagedata'].join('&nbsp;&nbsp;');
this.result['limit'] = [this.startR,this.endR];
this.result['report'] = '共'+this.cntR+'条,当前页'+this.startR+'-'+this.endR+','+this.curP+'/'+this.cntP+'页';
}
ETNGpager.prototype.parse = function (){
var obj = document.getElementById(this.srcName);
for(var i = 0;i<obj.childNodes.length;i++){
if(obj.childNodes[i].nodeType!=3)this.items[this.items.length]=obj.childNodes[i].innerHTML;
}
this.cntR = this.items.length;
return this.items.length;
}
ETNGpager.prototype.create=function(){
this.page();
document.getElementById(this.dstName).innerHTML='<li>'+this.items.slice(this.startR-1,this.endR).join('</li><li>')+'</li>';
document.getElementById(this.dstName).innerHTML+='<span class="ctrlPages">'+this.result['pagebar']+this.result['report']+'</span>';
}
//-->
第二段JS
<!--
var pager = new ETNGpager('list','list2',5,10);//5为每页显示条数。10为导航显示菜单数
var curP = 1;
page()
function page(i){
curP =(curP>pager.cntP)?1:curP;
if(i){
curP = n =i;
}else{
n = curP++;
}
pager.curP = (n>pager.cntP)?pager.cntP:n;
pager.create();
}
//-->


  • dedecms教程:定时生成站点地图sitemap.xml-DedeCms教程
  • 织梦CMS上传服务器后出现数据连接失败是怎么回事如何解决-DedeCms教程
  • 织梦DEDECMS 计划任务使用教程-DedeCms教程
  • DEDECMS自定义表单加入验证码问题修正-DedeCms教程
  • 分享Dedecms的一些seo优化简单技巧-DedeCms教程
  • 怎么解决DedecmsV5.7 SP1广告不能显示-DedeCms教程
  • 谈谈怎样防止Dedecms被挂马的问题-DedeCms教程
  • DedeCMS 5.7不兼容PHP 5.4版本的解决办法-DedeCms教程
  • dedecms实现任意页面调用当前会员信息的方法-DedeCms教程
  • 织梦百度结构化数据地图提交插件常见问题及解决方案-DedeCms教程
  • 网友评论

    关于我们 - 联系我们 - 广告服务 - 版权声明 - 人才招聘 - 友情链接 - 网站地图 - 帮助 - -

    CopyRight © 2010-2016 源码下载 easck.com , All Rights Reserved

    蒙公网安备 15052402000103号

    蒙ICP备14002389-1号