【发布时间】:2019-01-08 02:55:01
【问题描述】:
我正在使用 Slick Slider 来构建事件滑块。每个“幻灯片”由一组 6 个不同大小的事件组成(如下图所示):
PHP:
<div id="eventsList">
<div class="eventsGroup">
<?php foreach ($events as $event) { ?>
<? $counter++; ?>
<?php if ($counter == 1) { ?>
<div>
<div class="gridblock">
<div class="gridblock_inner">
<?php echo $event['name']; ?>
</div>
</div>
<?php } ?>
<?php if ($counter == 2) { ?>
<div class="gridblock sixty">
<div class="gridblock_inner no_right_margin">
<?php echo $event['name']; ?>
</div>
</div>
</div>
<?php } ?>
<?php if ($counter == 3) { ?>
<div style="width:66.666667%;float:left;">
<div class="gridblock onehundred">
<div class="gridblock_inner">
<?php echo $event['name']; ?>
</div>
</div>
<?php } ?>
<?php if ($counter == 4) { ?>
<div class="gridblock fifty">
<div class="gridblock_inner">
<?php echo $event['name']; ?>
</div>
</div>
<?php } ?>
<?php if ($counter == 5) { ?>
<div class="gridblock fifty">
<div class="gridblock_inner">
<?php echo $event['name']; ?>
</div>
</div>
</div>
<?php } ?>
<?php if ($counter == 6) { ?>
<div style="width:33.333333%;float:left;">
<div class="gridblock onehundred twohigh">
<div class="gridblock_inner no_right_margin doublehigh">
<?php echo $event['name']; ?>
</div>
</div>
</div>
<?php } ?>
<?php } ?>
</div>
</div>
光滑的滑块 JS:
$('#eventsList').slick({
dots: true,
arrows: false,
infinite: true,
slidesToShow: 1,
slidesToScroll: 1
});
当然,如果数组中只有 6 个项目,则此代码可以正常工作,但我想对其进行修改以按比例缩放,以便我可以添加任意数量的事件,并使其遵循相同的分组模式6 套。
我最初尝试过这样的模式:
if (($counter % 3) == 0) {
}
但它没有意义,因为它分为 6 个。我怎样才能做到这一点,以便它可以扩展?提前谢谢你。
这是一个有效的fiddle
【问题讨论】:
标签: php arrays loops iteration slick.js