在很多列表调用的时候都需要有隔行换色或者多行不同颜色,特别在全通式的首页轮展图的时候,要想实现轮展图背景随着图片的更换,超过三张或多张的时候,隔行换色已经不能解决问题了,在原来的隔行换色的基础上,进行小小的修改就可以实现这样的功能。
列表调用隔行换色
全通式首页轮展图背景色更换
照片墙形式
标签说明:1
2
3
4
5
6
7
8
9
arclist 标签下使用 [field:global.autoindex/] 默认从1开始
channel 标签下使用 [field:global.autoindex/] 默认从0开始
channelartlist 标签下使用 {dede:global.itemindex/} 默认从1开始
arclist 从0开始[field:global name=autoindex runphp="yes"]@me=@me-1;[/field:global]
channel 从1开始[field:global name=autoindex runphp="yes"]@me=@me+1;[/field:global][field:typename/]
channelartlist 从0开始{dede:global name=itemindex runphp='yes'}@me=@me-1;{/dede:global}
channelartlist 标签下使用 {dede:global name='itemindex' runphp='yes'}@me;{/dede:global}
隔行换色(增加样式),list同arclist
<div> <ul> {dede:list pagesize='50'} <li> [field:global runphp='yes' name=autoindex] $a="<div id='a'>"; $b="<div id='b'>"; if ((@me%2)==0) @me=$a; else @me=$b; [/field:global] <span>[[field:typelink/]][field:pubdate function="MyDate('Y-m-d',@me)"/]</span> <a href=http://www.dede58.com/"[field:arcurl /]">[field:title /]</a> </li> {/dede:list} </ul> </div>如果运用channel弄隔行换色,需要自增从1开始,精简写法如下:
1
2
3
4
5
6
7
8
9
<div>
<ul>
{dede:channel row=6 typeid=''}
[field:global name=autoindex runphp="yes"]((@me+1) % 2 == 0)?@me="<li class="last">":@me="<li>";[/field:global]
<h4>[field:title/]</h4>
</li>
{/dede:channel}
</ul>
</div>
隔3行(n行)换色(增加样式)精简写法,替换橙色字体部分
1
2
3
4
5
6
7
8
9
<div>
<ul>
{dede:arclist row=6 typeid=''}
[field:global name=autoindex runphp="yes"](@me % 3 == 0)?@me="<li class="last">":@me="<li>";[/field:global]
<h4>[field:title/]</h4>
</li>
{/dede:arclist}
</ul>
</div>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
<div>
<ul>
{dede:arclist typeid='8' row='6' orderby='weight'}
[field:global runphp='yes' name=autoindex]
$a="<li>";
$b="<li>";
$c="<li>";
$d="<li>";
$e="<li>";
$f="<li>";
if ((@me/1)==1) @me=$a; <!--调用的<li>次数(第一次调用)能被1整除,则该<li>对应$a的class='gd_1'-->