Javascript 适当地使用onClick

Javascript 适当地使用onClick,javascript,onclick,Javascript,Onclick,处理onClick事件的正确方法是什么 <div class='container' onClick={() => { *do something* }}> <div class='element'></div> <div class='element'></div> <div class='element'></div> </div> {*做点什么*}}> 如果单击其中一个子元

处理onClick事件的正确方法是什么

<div class='container' onClick={() => { *do something* }}>
  <div class='element'></div>
  <div class='element'></div>
  <div class='element'></div>
</div>
{*做点什么*}}>

如果单击其中一个子元素,这将导致onClick也被触发。如何将事件限制为仅在容器上触发?

检查
event.currentTarget

<div class='container' onClick={(e) => { if(e.currentTarget.class == "container") { do something } }}>
  <div class='element'></div>
  <div class='element'></div>
  <div class='element'></div>
</div>
{if(e.currentTarget.class==“container”){do something}>

检查
事件.currentTarget

<div class='container' onClick={(e) => { if(e.currentTarget.class == "container") { do something } }}>
  <div class='element'></div>
  <div class='element'></div>
  <div class='element'></div>
</div>
{if(e.currentTarget.class==“container”){do something}>

将操作限制到事件目标。像那样的事

document.querySelector('.container').addEventListener('click', function(e){
  e.target.doSomething;
});

/*
* document.querySelector('.container')
*   .addEventListener('click', (e) => {
*   e.target.doSomething;
*})
*/

将操作限制为事件目标。像那样的事

document.querySelector('.container').addEventListener('click', function(e){
  e.target.doSomething;
});

/*
* document.querySelector('.container')
*   .addEventListener('click', (e) => {
*   e.target.doSomething;
*})
*/

在这里可以找到更好的javascript解决方案。在这里可以找到更好的javascript解决方案。