我在我的网站上创建了一些 jQuery 功能,而一系列 Facebook 帖子和推文被循环显示在首页上。
我的首页上有 5 个框,我需要 5 个来同时显示这个数组中的随机元素,然后我使用一些 jQuery 循环功能来循环浏览这个数组。唯一的问题是,因为我在这个数组上循环了 5 次(每个框),并且这个数组中只有 20 个项目,它可以显示重复的数据。
为了帮助更多地解释这一点,这里是我的代码:
<?php
$social_feeds = array_merge($tweets_feed, $facebook_feeds);
$social_feeds_arranged = $tweets_feed_instance->sortArrayItemsByDate($social_feeds);
?>
<div id="social_box_item1" class="social_box_item">
<?php foreach($social_feeds_arranged as $item) { ?>
<a class="item">
<?php echo $item['text'] ?>
</a>
<?php } ?>
</div>
<div id="social_box_item2" class="social_box_item">
<?php foreach($social_feeds_arranged as $item) { ?>
<a class="item">
<?php echo $item['text'] ?>
</a>
<?php } ?>
</div>
<div id="social_box_item3" class="social_box_item">
<?php foreach($social_feeds_arranged as $item) { ?>
<a class="item">
<?php echo $item['text'] ?>
</a>
<?php } ?>
</div>
<div id="social_box_item4" class="social_box_item">
<?php foreach($social_feeds_arranged as $item) { ?>
<a class="item">
<?php echo $item['text'] ?>
</a>
<?php } ?>
</div>
<div id="social_box_item5" class="social_box_item">
<?php foreach($social_feeds_arranged as $item) { ?>
<a class="item">
<?php echo $item['text'] ?>
</a>
<?php } ?>
</div>
<script type="text/javascript">
jQuery(document).ready(function() {
jQuery('#social_box_item1').cycle({
});
jQuery('#social_box_item2').cycle({
});
jQuery('#social_box_item3').cycle({
});
jQuery('#social_box_item4').cycle({
});
jQuery('#social_box_item5').cycle({
});
});
</script>
我需要发生的事情是第一个循环将它显示的项目推到数组的后面,所以当第二个循环访问第一个项目时,它不会显示相同的数组项目,与第三个相同,第 4 和第 5 圈。我曾尝试使用 array_push 和 array_shift 来做到这一点,但似乎无法让它工作。
有没有人有任何想法或可以帮助指出我哪里出错了?