大家好,我的 checkRight() 函数有问题。 我尝试用js构建一个测验网页。 这是我的完整代码:https://www.codeply.com/go/qoCnPUDDxG 我的问题由一个类组成:问题(字符串)、答案(字符串数组)和答案(字符串)属性。 如果我点击正确的答案,我的计数器就会变得非常困惑。
function checkRight (){
$(".answer").click(function() {
check = $(this).html();
if(check===qAry[i].rightAnswer){
rightCounter++;
$(".richtigZaehler").text(rightCounter);
i++;
askQ();
}
else if(check!=qAry[i].rightAnswer){
console.log("Update");
wrongCounter++;
$(".falschZaehler").text(wrongCounter);
}
});
}
最佳答案
在外部添加点击处理程序怎么样?否则您将需要取消注册它们。
var rightCounter=0; //counter for rightAnswer
var wrongCounter=0; //counter for wronganswer
$(".answer").on("click", function() {
checkRight(this);
})
然后在你的 checkRight 函数中:
function checkRight (evt){
check = $(evt).html();
if(check===qAry[i].rightAnswer){
debugger;
rightCounter++;
$(".richtigZaehler").text(rightCounter);
i++;
askQ();
}
else if(check!=qAry[i].rightAnswer){
console.log("Update");
wrongCounter++;
$(".falschZaehler").text(wrongCounter);
}
}
关于javascript - 为什么在第一个 if 语句为 true 后,我的第二个 if 语句连续运行两次?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53978160/