Javascript 在动态网格中放置随机空间
我有一个动态生成网格的单词列表 问题是我需要一个6x6网格,如果列表中没有足够的单词来支持6x6(12个单词),那么它就不会 我如何使它始终生成6x6网格,随机生成单词位置,并用空单元格填充空白Javascript 在动态网格中放置随机空间,javascript,jquery,Javascript,Jquery,我有一个动态生成网格的单词列表 问题是我需要一个6x6网格,如果列表中没有足够的单词来支持6x6(12个单词),那么它就不会 我如何使它始终生成6x6网格,随机生成单词位置,并用空单元格填充空白 var listOfWords = ["mat", "cat", "dog", "pit", "pot", "fog"]; var shuffledWords = listOfWords.slice(0).sort(function() { return 0.5 - Math.random();
var listOfWords = ["mat", "cat", "dog", "pit", "pot", "fog"];
var shuffledWords = listOfWords.slice(0).sort(function() {
return 0.5 - Math.random();
}).slice(0, 6);
var tbl = document.createElement('table');
tbl.className = 'tablestyle';
var wordsPerRow = 2;
for (var i = 0; i < shuffledWords.length; i += wordsPerRow) {
var row = document.createElement('tr');
for (var j = i; j < i + wordsPerRow; ++j) {
var word = shuffledWords[j];
for (var k = 0; k < word.length; k++) {
var cell = document.createElement('td');
cell.textContent = word[k];
row.appendChild(cell);
}
}
tbl.appendChild(row);
}
document.body.appendChild(tbl);
var listOfWords=[“mat”、“cat”、“dog”、“pit”、“pot”、“fog”];
var shuffledWords=listOfWords.slice(0).sort(函数(){
返回0.5-Math.random();
}).切片(0,6);
var tbl=document.createElement('table');
tbl.className='tablestyle';
var wordsPerRow=2;
for(变量i=0;i
我补充说:
while(listOfWords.length < 6)
listOfWords.push(" ");
while(listOfWords.length<6)
listOfWords.push(“”);
因此,如果没有足够的单词,它会在数组中附加空的“单词”(3个空格),并将其洗牌,从而产生随机的空格
编辑 EDIT2 我想这就是你想要的: 我补充说:
while(listOfWords.length < 6)
listOfWords.push(" ");
while(listOfWords.length<6)
listOfWords.push(“”);
因此,如果没有足够的单词,它会在数组中附加空的“单词”(3个空格),并将其洗牌,从而产生随机的空格
编辑 EDIT2 我想这就是你想要的:
对不起,你忘了把它们拿出来@joeshmo@joeshmo是的,但它也需要易于调整。用
填充数组,使其达到所需的最大单元格数。您的意思是什么@单词总是3个字母长吗?你总是想要每行两个字吗?很抱歉,你忘了把它们拿出来@joeshmo@joeshmo是的,但它也需要易于调整。用
填充数组,使其达到所需的最大单元格数。您的意思是什么@单词总是3个字母长吗?您总是希望每行有两个单词吗?但如何指定要从列表中提取的单词数@TomI做了编辑;现在我定义了12个单词,还有一个文本框;你可以把一个数字从0到12;这就是将要使用的单词数。谢谢,这正是我需要的,但我无法将其应用到我的代码中。你能帮我吗@汤姆:也许……如果你尽力向我解释它到底要做什么,我会给你写一个函数;您可以首先为该函数提供一个有意义的全名和参数。表中每个单词的var rndspace生成3个空单元格,因此有6个、3个字母单词和18个空单元格@tom但如何指定要从列表中提取多少@TomI做了编辑;现在我定义了12个单词,还有一个文本框;你可以把一个数字从0到12;这就是将要使用的单词数。谢谢,这正是我需要的,但我无法将其应用到我的代码中。你能帮我吗@汤姆:也许……如果你尽力向我解释它到底要做什么,我会给你写一个函数;您可以首先为该函数提供一个有意义的全名和参数。表中每个单词的var rndspace生成3个空单元格,因此@Tom有6个、3个字母单词和18个空单元格
rndSpaces(["pim", "pam", "pet", "rol", "fik", "fak", "ral"]);