随机数组,仅在重新加载后随机化,仅限javascript

时间:2013-02-03 17:40:42

标签: javascript

我创建了一个包含6个类的字符串数组。 该函数由一个按钮调用,每次单击都会创建一个新类。 问题是,当我点击按钮时,我得到一个随机类,但如果我再次按下按钮。正在显示同一个类,而不是随机类。如果我重新加载页面,会生成一个随机类,但正如我所说,当我再次点击时会生成同一个类。

这是我的随机数组。

   var Array=["dice dice-side-one",
    "dice dice-side-two",
    "dice dice-side-three",
    "dice dice-side-four",
    "dice dice-side-five",
    "dice dice-side-six",
    "dice dice-side-six"];
    var rand = Array[Math.floor(Math.random() * Array.length)];

    function addDiceEvent() {
        dicesides_func(rand);

    }
}

如果问题出在某处,我会粘贴完整的功能。

 function AddEvent(){
        var AddEvent = "add";
        var addClassArr= document.getElementsByClassName(AddEvent);
        for(var i=0; i<addClassArr.length; i++){
            var addClass = addClassArr[i];
            addClass.addEventListener("click", addDiceEvent, true);
        }
        var Array=["dice dice-side-one",
        "dice dice-side-two",
        "dice dice-side-three",
        "dice dice-side-four",
        "dice dice-side-five",
        "dice dice-side-six",
        "dice dice-side-six"];
        var rand = Array[Math.floor(Math.random() * Array.length)];

        function addDiceEvent() {
            dicesides_func(rand);

        }
    }
    AddEvent();

1 个答案:

答案 0 :(得分:1)

每次调用函数时都要做随机事情,而不是在函数之外:

function addDiceEvent() {
    var rand = Array[Math.floor(Math.random() * Array.length)];
    dicesides_func(rand);
}