题记:在很多相册的网站中,都有这样的功能:当图片分多页显示的情况下,点击图片会自动翻页到下一张图片,接下来我们在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
];
}
}
(2)找到function __construct构造函数,修改为:
<?
php
……
$this
->
TotalPage
=
count
(
$this
->
SplitFields);
}
//
获得当前页面总数
$this
->
Fields[
'
totalpage
'
]
=
$this
->
TotalPage;
$this
->
LoadTemplet();
$this
->
ParseTempletsFirst();
}
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>
"
;
为:
$revalue
=
"
<center><a href='javascript:goNextPic();'>
<img src='$src' alt='$alt' $iw border='0'/></a><br/>$alt<br/></center>
"
;
the end. have fun!
Trackback url : http://www.blog-dragon.com/2007/12/dedecms-pic-gopage.html/trackback
本文介绍如何在DEDECMS4中实现图集自动翻页功能,通过修改源代码及添加JS脚本来实现图片浏览时的自动翻页。

被折叠的 条评论
为什么被折叠?



