使用while循环遍历元素时遇到问题

sty*_*ler 4 javascript jquery

我想循环遍历div的集合,并在触发点击事件时随机淡出它们但是此刻我必须不断点击以淡化其他div.我宁愿点击一个div并使其所有div随机淡出.我已经在while循环中添加了一些console.logs,一切似乎工作正常,问题是当我尝试淡出实际元素时.如果有人能帮忙那会很棒吗?

在这里小提琴:http://jsfiddle.net/kyllle/sdpzJ/7/

cam*_*aca 5

我不确定我是否理解你的问题,但这是一个可能的解决方案:

function randomFadeOut(i){  
    var random;
    var e = 0;
    while (e < ctnLength) { 
        random = Math.random() * 1000;
        $(ctn[e]).not(i).delay(random).animate({ opacity : 0 });
        e++;
    }        
}
Run Code Online (Sandbox Code Playgroud)

当你点击一个div时,这将随机淡出所有div.

我在这里更新你的小提琴.