我有這個骰子數組,改變attribues(srcset)在網格畫廊,我需要它顯示獨特的attribues,直到它耗盡,再次開始,所以我不會看到2,3 ,4個網格中的相同圖像。 感謝您的幫助使隨機骰子數組返回唯一attributres /防止重複
繼承人的jQuery的:
$(function() {
//array
var dice = $('.attachment-lenslight_squares').map(function() {
return $(this).attr('srcset')
}).get();
$('.attachment-lenslight_squares')
.click(function() {
var num = Math.floor(Math.random() * dice.length);
$(this).fadeOut(200, function() {
$(this).attr('srcset', dice[num]);
}).fadeIn(200);
});
setInterval(function() {
var rand = Math.floor(Math.random() * 15);
$('.attachment-lenslight_squares').eq(rand).click();
}, 3000);
});
感謝想法
怎麼樣使用一個數組,因爲它是用來突然離開每個項目?你用'num'來做這件事,但我在PHP中使用這樣的數組做了非常類似的事情,取得了很好的成功。 – staypuftman
這樣做的一種方法是生成一個值的數組,然後使用混洗算法來「隨機化」它們,然後只保留一個指向下一個返回值的指針。 –