Firefox事件目标的非jquery解决方案



我试着在学习jQuery之前学习Javascript,这样我就可以在向上移动之前获得基础。

为了学习,我做了一个简单的猜谜游戏,在Chrome &Safari,而不是Firefox。(我猜这就是人们使用jQuery的原因!)

我根据这个答案调整了代码。但它在Firefox中仍然无法工作。下面是相关代码。什么好主意吗?

function reportAnswer(e) {
  if(!e) e = window.event;
  questionNumber++;
  document.getElementById("myCount").innerHTML = (questionNumber + 1);
  var x = e.target || e.srcElement;
  checkAnswer();
}
function checkAnswer() {
  var thisAnswer = questionDatabase[currentQuestion].answer;
  if(event.target.id == thisAnswer) {
    document.getElementById("answer").innerHTML = ("YES! </br>" + questionDatabase[currentQuestion].photo);
    score++;
  }
  else {
    document.getElementById("answer").innerHTML = ("<img src=http://philly.barstoolsports.com/files/2012/11/family-feud-x2.png width='370' height='370'>");
  }
}

您的checkAnswer函数使用非标准全局window.event。您需要做两件事:

  1. 像@thesystem建议的那样添加evente参数。
  2. 确保从你的事件处理程序中传入该参数。

相关内容

最新更新