为了账号安全,请及时绑定邮箱和手机立即绑定

我的第一个代码不起作用,但我的第二个代码可以。第一个有什么问题?

我的第一个代码不起作用,但我的第二个代码可以。第一个有什么问题?

慕哥6287543 2023-09-28 15:36:34
我是 JavaScript 新手。我的代码有点问题。在代码中,我在 addEventListener 中设置了一个匿名函数作为事件函数,但它不起作用。 target.addEventListener("click", x); //it does not work// var x= function(event){      console.log(event.target);   };但如果我像第二个那样编写代码,那么它就可以工作。var y= function(){    target.addEventListener("click", x); //but it works// }  var x= function(event){    console.log(event.target);  };  y();我不明白第一个有什么问题。
查看完整描述

1 回答

?
湖上湖

TA贡献2003条经验 获得超2个赞

您需要在将函数分配给事件之前定义该函数 - 正如您在第二个示例中所做的那样,其中 y() 在定义 x 后执行


var x = function(event) {

  console.log(event.target);

};


// or

// const x = event =>  console.log(event.target);


const target = document.getElementById("butX");


target.addEventListener("click", x); //it does work//

<button type="button" id="butX">Click</button>


查看完整回答
反对 回复 2023-09-28
  • 1 回答
  • 0 关注
  • 84 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信