Firefox事件目标的非jQuery解决方案 我在学习jQuery之前尝试学习JavaScript,这样我就可以在移动之前得到基础。

Firefox事件目标的非jQuery解决方案 我在学习jQuery之前尝试学习JavaScript,这样我就可以在移动之前得到基础。,javascript,firefox,Javascript,Firefox,为了学习,我制作了一个简单的猜谜游戏,可以在Chrome和Safari中使用,但不能在Firefox中使用。(我想这就是人们使用jQuery的原因!) 我根据这个调整了代码。但它在Firefox中仍然不起作用。这是相关代码。有什么想法吗 function reportAnswer(e) { if(!e) e = window.event; questionNumber++; document.getElementById("myCount").innerHTML = (questio

为了学习,我制作了一个简单的猜谜游戏,可以在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'>");
  }
}
函数报告应答(e){
如果(!e)e=window.event;
问题编号++;
document.getElementById(“myCount”).innerHTML=(问题编号+1);
var x=e.target | | e.src元素;
检查答案();
}
函数checkAnswer(){
var thisAnswer=questionDatabase[currentQuestion]。答案;
if(event.target.id==thisAnswer){
document.getElementById(“答案”).innerHTML=(“是!
”+questionDatabase[currentQuestion].photo); 分数++; } 否则{ document.getElementById(“答案”).innerHTML=(“”); } }
您的
checkAnswer
函数使用非标准全局
窗口。事件
。您需要做两件事:

  • 向其添加
    事件
    e
    参数,如@thesystem所示
  • 确保从事件处理程序中传入该参数

  • “TypeError:e未定义”Webkit浏览器通常处理带引号/不带引号的属性。Else块中缺少“src”属性的引号