我正在尝试实现Tic Tac Toe游戏的逻辑,我几乎已经制作了一个逻辑,但是我在将数据推送到数组时被卡住了。这是我创建的一个小提琴。无法将数据推入阵列
http://jsfiddle.net/afzaal_ahmad_zeeshan/6bgjp/1/
让我解释一下整个事情给你!
我正在尝试使用表中的9个td作为可能获胜的8个行。为此,我根据它们在表格中的位置给出了一些tds类名。
的HTML是简单
<div class="vicvacvoe">
<table>
<tr>
<td class="line1 line4 line7"></td>
<td class="line1 line5"></td>
<td class="line1 line6 line8"></td>
</tr>
<tr>
<td class="line2 line4"></td>
<td class="line2 line5 line7 line8"></td>
<td class="line2 line6"></td>
</tr>
<tr>
<td class="line3 line4 line8"></td>
<td class="line3 line5"></td>
<td class="line3 line6 line7"></td>
</tr>
</table>
</div>
只是一个简单的表9个TDS的CSS是不是相对于这个所以离开它,我猜。
jQuery对此也很简单。但我无法将数据推送到阵列。
var vic = $('.vicvacvoe table tr td');
var player = 1;
var tick = '✓';
var cross = 'X';
var user1 = [];
var user2 = [];
vic.click(function() {
var className = $(this).attr('class');
if (className != 'dead') {
// A new board place to write on...
// Now do the processes here...
if (player == 1) {
// First player!
var cArray = className.split(' ');
for (i = 0; i < cArray.length; i++) {
for (j = 0; j < user1.length; j++) {
// check for each class
if (user1[j] != cArray[i]) {
user1.push(cArray[i]);
}
}
}
} else {
/* code for second player, the same */
}
$(this).text('Works!');
$(this).attr('class', 'dead');
}
});
这是整个jQuery脚本。实际上,当我运行代码时,它确实到达堆栈的末尾(到类属性更改脚本),并锁定td以进一步处理,并写入Works!也在td中。但是我无法在该用户的Array内获得classNames。我想保存每个用户的线路号码,然后检查他是否有3个点填充。我需要数组部分的帮助。
谢谢!
哦,我从来没有与该登场了!嗯,或者不是这样,只是使用'if(user1.lenght!= 0){'?你认为什么会更好? :) –
如果你是我猜测,试图检查数组中的存在,我会使用'inarray'。 –