最近做个东西,要实现的效果是20多个图片,每3个图片一排,用js滚动,网上查了一下,有一种是从在一维数组取值,实现一个1行有3列的表格的效果。

代码如下:

<table width=”555″ height=”26″ border=”0″ cellpadding=”0″ cellspacing=”0″>
<?php
$rs=array(“aaa”,”bbb”,”ccc”,”ddd”,”eee”,”fff”,”ggg”,”hhh”,”iii”);
$k=0;
for ($i=0; $i<9; $i++){
if($k == 0) echo “<tr>”;

echo <<<EOT
<td width=”187″ height=”26″><center>
<table width=”176″ height=”28″ border=”0″ cellpadding=”0″ cellspacing=”0″>
<tr>
<td width=”176″ height=”26″ valign=”middle”><a href=”$rs[$i]“>$rs[$i]</a> </td>
</tr>
</table>
</center></td>
EOT;

$k=($k+1)%3;
if($k == 0) echo “</tr>”;
}
?>
</table>

我参照他的效果改了一下实现需求,代码如下:

<div class=”scroll”>
<ul>
<?php
$k = 0; $i = 0;
foreach (array_values($D->cache_posts) as $p) {
if($k == 0){ echo “<li class=’”.($i/3+1).”‘>”;}
?>
<dl>
<dt><a href=”<?=$C->SITE_URL ?>item/<?=$p->post_id ?>” target=”_blank”><img src=”<?= $C->IMG_URL ?>attachments/<?= $this->network->id ?>/<?=img_treat($p->post_attach_front->file_original,’225_225′) ?>” alt=”<?=$p->gods_info['gods']->title ?>” /></a></dt>
</dl>
<?php
$k = ($k+1)%3;
if($k == 0) echo “</li>”;
$i++;
}
?>
</ul>
</div>

文章来源:毛蛋网(maoegg.com)