我将类为.footprint的元素动态添加到DOM中,并且需要向其添加click()事件。我当前的代码如下所示:

$("#pcb").on("click", ".footprint", selectFootprint);


但是,selectFootprint(sender)方法有一个参数,我想在其中传递DOM元素(此)。
我该怎么做?

最佳答案

一些解决方案(通过父母的上下文):

1)使用jquerys数据参数:

$("#pcb").on("click", ".footprint", this, function(e){
  console.log(this, e.data);//data is the parents this
});


2)使用闭包

var sender = this;
$("#pcb").on("click", ".footprint", function(){
  selectFootprint.call(this, sender);
 });


或者,如果您只想传递.footprint

$("#pcb").on("click", ".footprint",function(){
 selectFootprint(this);
});

09-27 21:59