我正在创建一个 Connect 4 游戏并创建了一个 td 元素表,其中每个 td 都有一个 row 和 col 值,即 (1,2)。这里:
for(var i = 0; i < rows; i++) {
$('table').append('<tr></tr>');
for(var j = 0; j < cols; j++) {
$('table').find('tr').eq(i).append('<td></td>');
$('table').find('tr').eq(i).find('td').eq(j).attr('data-row', i).attr('data-col', j);
}
我也有代码在点击时为每个 td 分配一个 css 类(每次点击颜色都会改变,因为它是 2 个玩家的颜色)。然后我想移动到右侧的 td (最后都是右、左、上和下),然后检查该 td 是否具有相似的颜色类,检查器需要转到 td 之后的 4 个向右查找是否有一系列相似颜色的 td(即连续 3 个红色 td 没有任何效果,但是 4 个可以)我想使用类似于我已经拥有的代码的东西,因为我通常可以理解它。在这里,ps 我知道 IF 语句的顺序完全不正确,我使用的是 for 循环(x = 1; x < 4; x++):
var win = false;
if(win == false) {
if($(this).hasClass('tdred')) {
var colindex = parseInt($(this).attr('data-col')) + 1;
var chosen = $('table tr').eq(colindex).find('td');
// ^ Moves to next td right of
//begin check if has class tdred
if($(chosen).hasClass('tdred')) {
x++;
alert(data - col + "is red");
var colindex = parseInt($(this).attr('data-col')) + 1;
if(x = 4) {
win == true;
}
if(x < 4)
}
} else {
alert("not red");
}
}
} else if(win == true)
Alert("You win");
}
希望你喜欢 if 语句的可怕积累,我相信这是纯粹的挫败感。