我已经下载了一个名为Publications的模块的模板。加载新闻页面时,它会调用此.tpl文件:
{title}{$category.title}{/title}
<div class="newsPage">
<h1>Latest News</h1>
{foreach from=$articles item=entry name=articles}
{if $smarty.foreach.articles.first}<dl><br />{/if}
<dt><a href="{$GLOBALS.site_url}/publications/{$category.id}/{$entry.id}/{$entry.title|replace:' ':'-'|escape:"urlpathinfo"}.html" class="title"></dt>
<dd>{$entry.description}</dd>
{if $smarty.foreach.articles.last}</dl></a>{/if}
{foreachelse}
[[There are no articles available at this time]]
{/foreach}
</div>
而且存在问题。如果有1000篇文章,则会加载所有文章,不会创建任何页面。
我正在尝试创建一个“显示更多”按钮,首先只显示最新的4篇文章,然后当点击“显示更多”按钮时,将显示接下来的4篇文章,依此类推......
这可能吗?任何人都可以帮助我创建一个动态新闻部分的新方法吗?
答案 0 :(得分:0)
我仍然没有安装我的编辑器,但你可以给一个div或任何东西一些属性,这使得该对象隐藏,我不确定它是阻止,还是隐藏它自己,
然后你也可以给它一个id,并用java脚本引用它,并且你已经知道像jQuery这样的查询语言,你甚至可以更简单地引用div元素,并改变它的属性,(我没有使用jQuery),如果它将作为toltip,你可以使用你的父div /图像/按钮/任何东西:
[style]:hover{display:block;}
对于正常的样式:
[style]{display:none;}
或代替显示,你可以使用
[style]:hover{visibility:visible;}
对于这样的stle:
[style]{visibility:hidden;}
这是大多数网站菜单利用的方式
答案 1 :(得分:0)
解决。将<dl> <dt> <dd>
更改为<ul> <li>
,然后:
var vis = 5;
$('.news li').slice(vis).hide();
var $more = $('<a href="#">Mais</a>')
$more.click(function(){
$('.news li:hidden').slice(0,vis).show();
if($('.news li:hidden').length == 0)
$more.hide();
});
$('.newsPage ul').after($more);