实现dedecms图集单击图片翻页的功能
作者:肥龙龙 来源:肥龙龙博客 时间:2009-02-19 20:41:00
题记:在很多相册的网站中,都有这样的功能:当图片分多页显示的情况下,点击图片会自动翻页到下一张图片,接下来我们在dedecms4中实现这个功能。以下是实现方法:
1、为了实现这个功能,我们首先需要获得图片页面的当前页码和总页码
编辑include/inc_archives_view.php文件
(1)找到function ParseDMFields,修改为:
function ParseDMFields($pageNo,$ismake=1)
{
$this->NowPage = $pageNo;
//获得当前页面编号
$this->Fields['cpagenum'] = $this->NowPage;
if($this->SplitPageField!="" &&
isset($this->Fields[$this->SplitPageField]))
{
$this->Fields[$this->SplitPageField] = $this->SplitFields[$pageNo - 1];
}
注意增加了如下代码用来获得当前的页码:
$this->Fields[’cpagenum’] = $this->NowPage;
(2)找到function __construct构造函数,修改为
<?php
……
$this->TotalPage = count($this->SplitFields);
}
//获得当前页面总数
$this->Fields['totalpage'] = $this->TotalPage;
$this->LoadTemplet();
$this->ParseTempletsFirst();
}
注意增加了如下代码用来获得总页码:
$this->Fields[’totalpage’] = $this->TotalPage;
2、接下来在模板中用js实现分析静态页面和动态页面以及向下翻页
编辑article_image.htm或者你的图集最终显示的模板,增加如下js代码:
<script language="javascript">
var npage = {dede:field name='cpagenum'/};
var totalpage = {dede:field name='totalpage'/};
var filename="";
var curl=location.href;
function goNextPic(){
str1 = /\.html/ig;
str2 = /_/ig;
r = curl.search(str1);
r1 = curl.search(str2);
if(r>0){
if(npage==1) filename = curl.substr(0,r);
else filename = curl.substr(0,r1);
if(npage==totalpage){ location.href = filename+".html"; }
else{
location.href = filename+"_"+(npage+1)+".html";
}
}else{
if(npage==totalpage){ location.href = "view.php?aid={dede:field name='id'/}"; }
else{
location.href = "view.php?aid={dede:field name='id'/}&pageno="+(npage+1);
}
}
} </script>
在这个js脚本中,我们定义一个方法goNextPic用来切换到下一个图片。
3、最后修改图片输出代码,完成goNextPic方法调用
修改include/inc_channel_unit.php
找到”//全部列出式或分页式图集”的部分。
修改类似(仔细看代码,需要修改好几个地方):
$revalue = "<center><a href='$src' target='_blank'><img src='$src' alt='$alt' $iw border='0'/></a><br/>$alt<br/></center>\r\n";
为:
$revalue = "<center><a href='javascript:goNextPic();'><img src='$src' alt='$alt' $iw border='0'/></a><br/>$alt<br/></center> ";
the end. have fun!
标签:dedecms,图片,翻页,分页
0
投稿
猜你喜欢
构建反病毒反垃圾邮件系统(六)
2007-10-08 13:50:00
Linux系统防CC攻击自动拉黑IP增强版(Shell脚本)
2023-08-04 22:46:38
百度联盟新版的主题推广代码的自定义优化
2008-06-17 15:04:00
百度试水“网页游戏” 与盛大51玩谨慎合作
2008-04-22 13:04:00
CentOS下命令行实现普通用户和root用户切换的实例
2023-11-02 17:25:35
网站更换域名应该注意的八个方面
2008-11-28 15:05:00
AdSense重要新功能 — 在新窗口中打开广告
2007-12-13 12:38:00
老生常谈:高效点击赚钱的技巧
2008-08-25 11:05:00
建立良好客户关系
2009-08-05 21:20:00
Apache配置参数deny和allow的使用实例
2023-11-02 19:59:57
马化腾:中国互联网潜力还没完全释放
2008-04-06 13:53:00
用邀请制造稀缺
2009-10-26 17:51:00
Windows2003服务器安装及设置教程——安全策略篇
2008-09-27 19:07:00
投放google Adsense的三点心得
2009-01-08 11:11:00
VMware、nmap、burpsuite的安装使用教程
2021-11-26 21:04:18
你不是软件工程师!
2011-05-21 08:39:00
Linux上安装搭建Nginx服务器的详细步骤
2022-04-05 21:02:49
五件购买WordPress空间后要做的事情
2010-03-22 11:18:00
SEO - 我们是不是走错了路?
2008-11-16 18:44:00
Discuz!如何开启使用HTML 主题分类 分类信息
2009-12-22 12:05:00