如果我理解正确,您希望嵌套在按钮内的元素是可点击的,并且只有在点击该元素时才触发函数。如果按钮本身已被单击,您还希望运行单独的操作。
您可以在整个按钮上运行事件侦听器,然后检查单击的元素e.target是按钮本身还是内部的 X。
如果我误解了您的问题,请告诉我,我会尝试更正我的答案。
const button = document.querySelector('button');
const buttonClose = document.querySelector('.button__close');
button.addEventListener('click',(e)=> {
if(e.target.classList == buttonClose.classList){
alert('Close Clicked')
}
});
.button__close{
background:white;
padding:10px;
display:inline-block;
margin-left:5px;
}
Example