Я хочу изменить число путем chooesing 6 чисел из 49 чисел, поэтому сначала я объявил div и имел шесть пролетов в нем, чтобы содержать число.Номер продолжает меняться
И я хочу изменить его getElementByTagName, чтобы назначить новый номер в сочетании с setInterval, чтобы он всегда менялся, но он не работает.
Где мое неправильное место?
Thx.
function computeRandom(){
var value = new Array(49);//declare array
for (i = 0; i < 49; i++)//initial array_value
value[i] = i+1;
for (i = 0 ;i < 100; i++) {//random arrange
x = parseInt(Math.random()*49);
y = parseInt(Math.random()*49);
tmp = value[x];
value[x] = value[y];
value[y] = tmp;
}
var color = new Array(49);
for (i = 0; i < 49; i++)//store color
color[i] = "rgb(" + parseInt(Math.random()*255) + "," + parseInt(Math.random()*255) + "," + parseInt(Math.random()*255) + ")";
var value_tmp = new Array(6);
for(i = 0; i < 6; i++)
value_tmp[i] = value[i];
document.write("<div style = \"text-align:center;\" >");//center the text by div
for(i = 0; i < 6; i++)
document.write("<span style = \"font-size: 2.5em; display:inline-block; text-align:center; width: 1.5em; background: white; color: " + color[i] + " \" > "
+ value_tmp[i] + "</span>     ");
var spanArray = document.getElementsByTagName("span");
setInterval("keepMove(value,spanArray)",10);
}
function keepMove(val,sp){
var index = parseInt(Math.random()*43);//set a increment to avoid repeatition
for(i = 0; i < sp.length; i++){
sp[i].innerHTML = val[i+index];
document.write(sp[i].innerHTML+" ");
}
}
CSS:
#bg {
background: grey;
opacity: 0.8;
}
#hl {
text-align: center;
color: white;
}
HTML: жаль, что я не знаю, как опубликовать HTML? http://codepad.org/IrSOsjg7
Я пробовал совет комментатора, но все еще не работал, но THX за вашу помощь! Я очень ценю это!
У браузера вы обнаружите ошибки. – wong2
Я считаю, что лучший способ получить случайные числа - это Math.floor (Math.random() * 255) – SomeKittens
Число продолжает увеличиваться и сообщение: Uncaught ReferenceError: значение не определено –