前提・実現したいこと
只今Javascript基礎の勉強中で、参考にしているサンプルコードでは e で呼び出し可能であったイベントのオブジェクトがなぜか呼び出せないです。
ゆくゆくはHTML上のボタンをクリックしたらそのボタンのテキストを取り出すe.taget.textContentを呼び出したいです。
発生している問題・エラーメッセージ
エラーメッセージ
Uncaught ReferenceError: e is not defined
該当のソースコード
const question = '4は?';
const answers = [
'1',
'2'
'3',
'4'
];
const $button = document.getElementsByTagName('button');
const correct = '4';
//クイズの問題文、選択を定義
const setupQuiz = () => {
document.getElementById('js-question').textContent = question;
let buttonIndex = 0;
while (buttonIndex < $button.length) {
$button[buttonIndex].textContent = answers[buttonIndex];
buttonIndex++;
}
}
setupQuiz();
const clickHandler = (e) => {
if (correct === e.target.textContent) {
window.alert('正解');
} else {
window.alert('不正解');
}
}
console.log(e);
$button[0].addEventListener('click', (e) => {
clickHandler();
})
$button[1].addEventListener('click', (e) => {
clickHandler();
})
$button[2].addEventListener('click', (e) => {
clickHandler();
})
$button[3].addEventListener('click', (e) => {
clickHandler();
})
回答3件
あなたの回答
tips
プレビュー