单击委托处理程序和内部子项

use*_*114 5 jquery

我有以下内容:

<ul id ='foo'>
    <li><p>hello</p></li>
    <li><p>hello</p></li>
    <li><p>hello</p></li>
</ul>

$('#foo').delegate('li', 'click', function(event) {
    var target = $(event.target);
    console.log(target);   
});
Run Code Online (Sandbox Code Playgroud)

点击其中一个内部p元素以及父li元素时,将调用click处理程序.

无论点击哪个内部子元素,我如何获得指向父li元素的指针?例如,我真正的li元素看起来像:

<li>
  <p>one</p>
  <div>
    <p>two</p>
  </div>
</li>
Run Code Online (Sandbox Code Playgroud)

所以我发现我必须要几张支票才能回到被点击的父李.有没有办法只选择类型的父类:

$('#foo').delegate('li', 'click', function(event) {
    var target = $(event.target).('li');
    console.log(target);   // will always be parent li element itself?
});
Run Code Online (Sandbox Code Playgroud)

谢谢

use*_*716 2

在处理程序中,this将引用该li元素。

$('#foo').delegate('li', 'click', function(event) {
    var target = $(this);
    console.log(target);   // will always be parent li element itself?
});
Run Code Online (Sandbox Code Playgroud)