表格的单元格会短暂变为红色。单元格是通过随机数选择的。
当单元格为红色时,用户应单击该单元格。
如果他在单元格仍为红色时单击该单元格,那么他将获得一分。
这就是这个想法。但它不起作用。当我点击单元格时什么也没有发生。
<!DOCTYPE html>
<html>
<head>
<style>
td{font-size:40px; padding:4px 10px;}
</style>
<script>
var blinkColors = new Array('red' );
var zw= new Array();
var blinkColor = 0;
var iterator = 0;
var hit=0;
for (var i = 0 ;i<10;i++){
zw[i]=Math.floor((Math.random() *8) + 1);
}
var myBlink = setInterval(function() {
doBlink();
}, 400);
function doBlink() {
var blinkCell = document.getElementById('blinker' +zw[iterator] );
blinkCell.style.backgroundColor = blinkColors[blinkColor];
blinkColor++;
if (blinkColor == blinkColors.length+1) {
blinkColor = 0;
blinkCell.style.backgroundColor = "transparent";
iterator++;
if (iterator == zw.length) {
alert("You hit. " + hit);
clearInterval(myBlink);
} else {
doBlink(zw[iterator]);
}
}
function hitColor(blink){
if (document.getElementById('blink').style.backgroundColor=="red")
hit++;
}
</script>
</head>
<body>
<table border="1">
<tr>
<td id="blinker0"onclick="melden(blinker6")> A </td><td id="blinker1"> B </td><td id = "blinker2"> C </td>
</tr>
<tr>
<td id="blinker3"onclick="melden(blinker6")> D </td><td id="blinker4"> E </td><td id = "blinker5"> F </td>
</tr>
<tr>
<td id="blinker6" onclick="melden(blinker6)" > G </td><td id="blinker7"> H </td><td id = "blinker8"> I </td>
</tr>
</table>
<br>
</body>
</html>
最佳答案
将第二个 if block 从第一个 if block 中拉出:
if (blinkColor == blinkColors.length+1) {
blinkColor = 0;
blinkCell.style.backgroundColor = "transparent";
iterator++;
}
if (iterator == zw.length) {
alert("You hit. " + hit);
clearInterval(myBlink);
} else {
doBlink(zw[iterator]);
}
关于javascript - 检查表格的单元格是否具有某种颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42249740/