使用jQuery随机更改属性时,防止具有两个以上相同的属性(srcset)

时间:2016-11-28 06:38:03

标签: jquery random attributes

我为网格库创建了这个脚本,每3秒随机更改一次图像,通过更改其srcset属性,总共有15个可见图像但是数组是由28个进行的,因为它的随机有时会发生有3个或更多相同的图像,有机会让所有15个相同(疯狂的小机会,但你得到我的观点),我想以某种方式防止它。

我正在考虑以某种方式定义最多可能存在2个相同的属性,因此如果有2个属性,则不会将其他img更改为该属性。或者如果可能的话,这将是完美的,只有一个属性可见,如果确实存在该属性,它不会将其添加到其他img

我最多可以拥有2个相同的属性,因为它可以最大限度地减少同时看到它们的机会,因为一半是隐藏的,它会阻止seeig 3或更多。

继承人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);

});

感谢您的想法

0 个答案:

没有答案