Jquery Random Math而不重复以前的var

时间:2012-05-11 19:31:09

标签: jquery math random

我有以下代码

var link = [];
link[0] = "css/pink/pink.css";
link[1] = "css/blue/blue.css";
link[3] = "";   
function changeStyle() {
var ran = Math.floor(Math.random() * link.length );
    var style = link[ran];
    jQuery('link[id=style-switch]').attr({href : style});
}

它有效,虽然我不确定如何使它不再重复先前的选择,直到它们全部循环。有什么想法吗?

1 个答案:

答案 0 :(得分:2)

你可以使用数组的shuffle(基本上是数组元素的随机排列) - 这需要保留一个单独的,混乱的数组,并且需要一个索引。以下是Fisher-Yates shuffle in Javascript的示例。