Javascript 执行jQuery队列的随机次数

Javascript 执行jQuery队列的随机次数,javascript,jquery,queue,Javascript,Jquery,Queue,我正在使用jQueryqueue()函数一个接一个地设置一组图像的动画。我想要的是队列在每次执行时都随机出现多次。下面是设置队列的JS: //rotate colors function function rotateColors() { for (var i=0; i<7; i++) { isAnimating = true; color.delay(50).eq(i).fadeIn(100); color.delay(100).e

我正在使用jQuery
queue()
函数一个接一个地设置一组图像的动画。我想要的是队列在每次执行时都随机出现多次。下面是设置队列的JS:

//rotate colors function
function rotateColors() {
    for (var i=0; i<7; i++) {
        isAnimating = true;
        color.delay(50).eq(i).fadeIn(100);
        color.delay(100).eq(i).fadeOut(100);
    }   
}
//rotate colors on button click
button.bind('click', function() {
    color.queue(function(n) {
        rotateColors();
        n();
    });
});
//旋转颜色函数
函数rotateColors(){
对于(var i=0;i使用
Math.random()
生成一个随机数

function rotateColors() {
    var rnd = Math.floor(Math.random() * 10) + 1; // generate random number between 1 and 10
    for (var i = 0; i < rnd; i++) {
        isAnimating = true;
        color.delay(50).eq(i).fadeIn(100);
        color.delay(100).eq(i).fadeOut(100);
    }   
}
//rotate colors on button click
button.bind('click', function() {
    color.clearQueue().queue(function(n) {
        rotateColors();
        n();
    });
});
函数rotateColors(){
var rnd=Math.floor(Math.random()*10)+1;//生成介于1和10之间的随机数
对于(变量i=0;i

注意:我添加了
clearQueue()
单击
处理程序,以防止连续单击时队列上堆积大量操作。

感谢您的回复。这似乎可以工作,但现在它随机引入图像,而不是按顺序执行……这似乎没有改变任何东西。我通过在
Math.r中设置max-min值来修复此问题andom()
函数。因为我有7个每次都必须执行的图像,所以最小值必须设置为7。我希望队列最多执行4次,所以我的最大值是28(7*4)。这是我的最后一个随机函数:
var rnd=Math.floor(Math.random()*(28-7)+1)+7;
——但是现在,队列结束和再次执行之间有一个延迟。如何消除该延迟?