代码之家  ›  专栏  ›  技术社区  ›  BeeBee8

jQuery:如何在不添加事件侦听器的情况下获取“this”上下文?

  •  0
  • BeeBee8  · 技术社区  · 8 年前

    我正在Angular 4应用程序中工作,请考虑以下场景。

    jQuery代码:

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

    html代码:

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

    我知道,这行不通,我想实现的是,如何 this 可以在jQuery中使用的上下文,而无需添加事件监听器,如 $(".toggleBtn").on('click',function () {}); ?

    1 回复  |  直到 8 年前
        1
  •  0
  •   BeeBee8    8 年前

    没关系,我知道答案了,

    jQuery代码:

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

    Html代码:

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

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

    事件目标(添加的版本:1.0)

    描述:启动事件的DOM元素。

    目标属性可以是为事件注册的元素 或者是它的后代。比较事件通常很有用。目标为 这是为了确定事件是否因事件而被处理 冒泡。此属性在事件委派中非常有用 事件气泡