事件捕获,事件冒泡和jQuery.on()

问题描述 投票:14回答:2

我对事件捕获冒泡jQuery.on()有一个有趣的问题。

我最近了解了更多有关事件捕获和事件冒泡之间的区别,以及两者如何以不同方式流入和流出DOM中的子父元素。

因此要使用“事件捕获方向”添加事件监听器我会使用:

element.addEventListener("click", myFunction, true);

并使用“事件气泡方向”添加事件监听器我将使用:

element.addEventListener("click", myFunction, false);

这一切都很好,但是我想知道的是,当使用jquery.on()添加事件侦听器时,如何根据捕获和冒泡来指定事件方向?

当前我正在使用类似的东西:

$('parent selector').on('click', 'child selector', function(){alert('just alert something already...');});

我如何告诉jQuery它需要在“事件捕获方向”“事件冒泡方向”上添加这些事件侦听器?]

javascript jquery jquery-events event-bubbling event-capturing
2个回答
20
投票

你不能。 jQuery事件与事件冒泡一起使用,它不支持捕获。

也请参见


0
投票

您可以使用e.target来获取被单击的确切元素

  $('.parent').on('click', function(e){
    if(e.target.classList.contains('child'))
      // do something
    }
  })
© www.soinside.com 2019 - 2024. All rights reserved.