我在这里有一个模拟器工作正常,这个模拟器有48个块(DIV元素),我使用Math.floor((Math.random() * 48) + 1)
随机附加每个块的结果。问题是它们在最终模拟上太接近了(见下图):
是否有jquery / javascript函数,我可以从模拟奇数/偶数返回数组项?就像,它会添加每个块,如:1,3,5,7,9
然后2,4,6,8
。
我的代码现在看起来像这样:
if(adicionados.length < 48)
{
while(i<=eE && adicionados.length < 48)
{
sol = Math.floor((Math.random() * 48) + 1);
if(adicionados.length == 0 || adicionados.indexOf(sol) == -1)
{
adicionados.push(sol);
//console.log(adicionados);
$("#base"+sol).attr("src", foto);
$("#base"+sol).attr("data-i", $(this).parent().parent().find('.relacionados-img').attr('data-cor'));
i++;
}
}
谢谢!
答案 0 :(得分:0)
你可以只使用两个for循环,因为你有固定的行和列号,你试图绘制一个固定的模式。
for(var i=1;i<=8;i++)
{
for(var j=1;j<=6;j++)
{
var sol=(i*6)+j;//if you are naming the boxes from left to right.
if(i%2==1)
{
if(j%2==1)
{
//your code to draw those boxes.
}
}
else
{
if(j%==0)
{
//your code to draw those boxes.
}
}
}
}