我有一个 8x8 的 table ,上面有 <td>
元素,每个元素都有自己唯一的 id(左下角有 11,右下角有 18,右上角有 88,左上角有 81)。
现在我正在编写一个 IF 语句,但我不知道如何指定条件。
假设我们有 <td id="21">
。这个应该符合条件,<td id="22">
也应该如此。等等..只要<td>
位于第二排。用手写下这些条件似乎有点多余?
var elemId1 保存所选 <td>
的 ID ;
case "♙":
{
if(elemId1== (conditions))
{
//CODE TO MOVE THIS FIGURE
}
}
break;`
最佳答案
您最好使用 data attributes :
<table>
<tr>
<td id="81" data-row="8" data-column="1"></td>
<td id="82" data-row="8" data-column="2"></td>
<td id="83" data-row="8" data-column="3"></td>
<td id="84" data-row="8" data-column="4"></td>
...
</tr>
<tr>
<td id="71" data-row="7" data-column="1"></td>
...
</tr>
...
</table>
然后你可以说:
if (document.getElementById(elemId1).dataset.column === "8") {
// CODE TO MOVE THIS FIGURE
}
如果您确实想坚持对 id 中的行和列进行编码,则可以使用一些整数数学对其进行解码:
var row = Math.floor(elemId1 / 10);
var column = elemId1 % 10;
(%
是模运算符;它给出除法的余数)
关于javascript - if 的多个条件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27385709/