Smarty模板实现隔行换样式
在网上找了好多关于隔行改变样式的文章,都不符合自己的要求,所以自己想了好多办法,终于把隔行改变样式拿下!
这是模板文件中商品分类列表
<!--{foreach from=$categories item=cat name=sadxy}-->
<!-- {if $smarty.foreach.sadxy.index%2==0}-->
<li class="odd"><a href="{$cat.url}">{$cat.name|escape:html}</a></li>
<!-- {else} -->
<li class="even"><a href="services.html">{$cat.name|escape:html}</a></li>
<!-- {/if} -->
<!--{/foreach}-->
if语句中$smarty.foreach.sadxy.index获取的是当前循环次数。
$smarty.foreach.sadxy.index%2==0判断奇偶。其中判断奇偶还可以用mod2, 除了使用算术运算符判断,还可以使用位运算符来判断。
$num&1 //判断奇数,是返回TRUE,否返回FALSE
!($num&1)//判断偶数,是返回TRUE,否返回FALSE