gpt4 book ai didi

javascript - 如何在 Javascript 中使用事件委托(delegate)?

转载 作者:行者123 更新时间:2023-11-30 09:35:08 25 4
gpt4 key购买 nike

elem.addEventListener('click',function(e){
if(e.target && e.target.matches("span#save-icon")){
var HEX = e.target.parentNode.innerHTML.split('span')[2].split('>')[2].split('<')[0];
save_to_my_space(HEX);
console.log(HEX);
}
});

这里 elem 是一个有 8 个子元素的父 div,我在 elem 的所有子元素上使用委托(delegate)事件。每当我通过单击 elem 事件的子项之一触发事件时,都会触发多次等于 elem 的子项数。如何解决这个问题?

最佳答案

使用event.stopPropagation() 将解决问题

如@George 所述,请查看文档 here.

elem.addEventListener('click',function(e){
if(e.target && e.target.matches("span#save-icon")){
e.stopPropagation()
var HEX = e.target.parentNode.innerHTML.split('span')[2].split('>')[2].split('<')[0];
save_to_my_space(HEX);
console.log(HEX);
}
});

关于javascript - 如何在 Javascript 中使用事件委托(delegate)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44004239/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com