2

次のコードがあります

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});
}

それは機能しますが、すべてがループされるまで前の選択を繰り返さないようにする方法についてはわかりません。何か案は?

4

1 に答える 1

2

配列のシャッフル (基本的には配列要素のランダムな順列) を使用できます。これには、別のシャッフルされた配列とそのインデックスを保持する必要があります。Javascript でのフィッシャー・イェーツ シャッフルの例を次に示します。

于 2012-05-11T19:33:57.100 に答える