jQuery:如何在不添加事件监听器的情况下获得“此”上下文?

时间:2018-02-18 06:27:23

标签: javascript jquery angular

我正在使用Angular 4 app,请考虑以下情况。

jQuery代码:

toggle(this: any) {
  $(this).siblings('.legends').slideToggle();
}

html代码:

<div (click)="toggle(this)"></div>

我知道,这不起作用,我想要实现的是,如何在不添加this之类的事件监听器的情况下获取可在jQuery中使用的$(".toggleBtn").on('click',function () {});上下文?

1 个答案:

答案 0 :(得分:0)

没关系,我得到了答案,

jQuery代码:

toggle(event: any) {
  $(event.target).siblings('.legends').slideToggle();
}

Html代码:

<div (click)="toggle($event)"></div>

参考:https://api.jquery.com/event.target/

  

event.target(版本添加:1.0)

     

描述:发起事件的DOM元素。

     

target属性可以是为事件注册的元素   或其后代。将event.target与之比较通常很有用   这是为了确定事件是否由于事件而被处理   冒泡。这个属性在事件委托时非常有用   事件泡沫

相关问题