您始终可以使用两个数组,其中一个放置正确和不正确的代码,然后是另一个二维数组,每个问题和每个答案都有一个包含代码的数组的索引。
当您遇到某个问题时,循环遍历 2D 数组的该部分并将代码附加到每个答案。
例如:
var codeArray = [notCorrect, correct]; // your functions you have defined, that are called when the answer is correct or not correct.
var answerArray = [
[1, 0, 0, 0],
[0, 1, 0, 0],
// ... etc ...
[1, 0, 0, 0],
];
$('.button').click (function (event) {
// get questionNumber and answerNumber
codeArray[answerArray[questionNumber-1][answerNumber-1]](); // call the function, and mind the 0 indices!
}
编辑,更多信息:
数组可以这样定义:
var myArray = [0, 1, 2, 3, 4, 5];
您可以在每个“插槽”中放置任何值。在我的示例中,我只使用1
's 和0
's。要访问数组中的这些数字,请使用方括号 ( []
)。
您还可以将函数放入数组中(在我的示例中,codeArray
. 您甚至可以提供匿名函数,如下所示:
var codeArray = [function () { alert("Not correct"); }, function () { alert("Correct!"); }];
最后几行代码是任何.button
点击的点击处理程序。如果用户单击带有 class 的按钮,button
则触发此功能。
我希望这对您有所帮助,如果您对此不了解,请阅读一些 JavaScript 书籍,并获得更多的教育。