我正在为孩子们创建一个“打鼹鼠”风格的教育游戏,在这里给出一个问题,他们必须点击正确的出现号码。例如,当给出类似“2 + 2”的总和时,孩子必须等待“4”出现并单击它。每次遇到正确答案时问题都会改变,但问题是当新问题出现时没有正确的答案,而且您点击的每个号码都会添加错误的答案。有人能告诉我为什么会一直这样。
以下是总和的案例..
function correctlabels() {
switch (Math.ceil(Math.random() * 9)) {
case 1:
check = sum1;
$('#target').html('0 + 1 = ?');
break;
case 2:
check = sum2;
$('#target').html('1 + 1 = ?');
break;
case 3:
check = sum3;
$('#target').html('2 + 1 = ?');
break;
case 4:
check = sum4;
$('#target').html('2 + 2 = ?');
break;
case 5:
check = sum5;
$('#target').html('2 + 3 = ?');
break;
case 6:
check = sum6;
$('#target').html('3 + 3 = ?');
break;
case 7:
check = sum7;
$('#target').html('2 + 5 = ?');
break;
case 8:
check = sum8;
$('#target').html('2 + 6 = ?');
break;
case 9:
check = sum9;
$('#target').html('2 + 5 = ?');
break;
}
这是一个显示我的意思的小提琴.. http://jsfiddle.net/pUwKb/8/
答案 0 :(得分:3)
我认为这是因为你永远不会重新添加正确的'类。 尝试更改此内容:
$('.character').each(function (index, character) {
if (!check(parseInt(this.getAttribute("value")))) {
$(this).addClass("wrong");
$(this).removeClass("right");
}
});
到此:
$('.character').each(function (index, character) {
if (!check(parseInt(this.getAttribute("value")))) {
$(this).addClass("wrong");
$(this).removeClass("right");
} else {
$(this).addClass("right");
$(this).removeClass("wrong");
}
});
不错的游戏顺便说一句:)