我使用ditto来显示特定父级的最后一个条目。为此,我使用以下电话:
[!Ditto? &parents=`5` &orderBy=`createdon DESC` &display=`3`
&total=`4` &extenders=`summary` &tpl=`tpl_news` &truncLen=`160` &truncOffset=`20` !]
我现在希望我的网站不断循环访问特定范围的父ID,并每隔一秒更改一次父参数。
结果应该是ditto调用所调用内容的“幻灯片”。
没有特殊效果,没有设计(模板提供的除外)。
有没有简单的方法来管理它?
解决方案:
让它发挥作用!
我创建了这个资源:
<div id="newsticker_vn">[!Ditto? &parents=`6` &orderBy=`createdon DESC` &display=`1`<br />&total=`4` &extenders=`summary` &tpl=`tpl_news` &truncLen=`160` &truncOffset=`20` !]</div>
<div id="newsticker_hp">[!Ditto? &parents=`5` &orderBy=`createdon DESC` &display=`1`<br />&total=`4` &extenders=`summary` &tpl=`tpl_news` &truncLen=`160` &truncOffset=`20` !]</div>
<div id="newsticker_ks">[!Ditto? &parents=`7` &orderBy=`createdon DESC` &display=`1`<br />&total=`4` &extenders=`summary` &tpl=`tpl_news` &truncLen=`160` &truncOffset=`20` !]</div>
并使用此脚本获取所需的ditto调用并循环它们:
<div id="newsticker"></div>
<script type="text/javascript">
function execute() {
$( "#newsticker" ).load("[~348~] #newsticker_vn").delay( 300 ).fadeIn( "slow" ).delay( 6000 ).fadeOut( "slow",execute2 );
}
function execute2() {
$( "#newsticker" ).load("[~348~] #newsticker_ks").delay( 300 ).fadeIn( "slow" ).delay( 6000 ).fadeOut( "slow",execute3 );
}
function execute3() {
$( "#newsticker" ).load("[~348~] #newsticker_hp").delay( 300 ).fadeIn( "slow" ).delay( 6000 ).fadeOut( "slow",execute );
}
execute();
</script>
我尝试在一个功能中执行所有步骤,但由于某种原因,它在旋转之前显示每个同上三次调用,不明白为什么。
感谢您的帮助!
答案 0 :(得分:1)
除非我不理解你要做什么,否则如果不改变你的模板就不可能(假设你的模板不支持循环)。
从你的解释看起来你似乎是某种ajax功能。您需要在管理器中设置2个资源。
第一页是您的常规页面。第二个是使用&#34;空白&#34;模板,只有一个随机的Ditto调用。您将不得不修改第一个模板以使用一些ajax代码加载第二页。