さて、私のコードの問題は、コードをアクティブ化する実際のhtmlページに関連していると思いますが、確信が持てません。私がやろうとしているのは、配列を介して2つの質問をすることです。2番目の質問で正しいのではなく「gerp」を表示し、質問2で間違っている場合は、間違っていることを通知します。
これは私が「なぞなぞ」を始めるためにページで使用するものです:
<button onclick="myFunction()">Click Me</button>
<p id="demo"></p>
これは、htmlファイルとは別のjsファイルで使用するコードです(ばかげているように聞こえる場合は申し訳ありませんが、具体的にしようとしているだけです)。
var i = 0;
var myArray = [{
q: "What was her favorite Color?",
a: "purple" }, {
q: "gymhoaccetpptfe",
a: "rev six nine eleven"}];
function myFunction() {
var x;
var name = prompt(myArray[i].q);
if (name == myArray[i].a) {
x = document.getElementById("demo").innerHTML + " " + "Correct!" + " " + "Listen!"
+ " " +
"http://www.npr.org/2010/02/12/123534818/carl-sagan-and-ann-druyans-ultimate-mix-tape"
;
i= i + 1 ;
document.getElementById("demo").innerHTML = x;
} else if ((name == myArray[i + 1].a)) {
x = document.getElementById("demo").innerHTML + " " + "gerp!";
document.getElementById("demo").innerHTML = x;
} else {
x = document.getElementById("demo").innerHTML + name + " " + "is" + " " + "wrong!";
document.getElementById("demo").innerHTML = x;
}
}
2番目の質問に正解したときに「Gerp」を表示したいだけです。