提问人:LuisAFK 提问时间:12/22/2022 更新时间:12/22/2022 访问量:31
侦听任何元素上的非冒泡事件
Listen for non-bubbling events on any element
问:
有没有办法在 DOM 树中的任何元素上侦听非冒泡事件?
我想侦听创建和加载的任何映像上的事件,而不必向每个映像添加事件(这也不起作用,因为可以随时创建新映像)。load
有什么办法可以做到这一点吗?
答:
2赞
Randy Casburn
12/22/2022
#1
- 为 load 事件添加事件侦听器
- 检查 tagName 是否为 IMG
- 您可以通过将第二个参数 设置为 true 来使用事件生命周期的捕获阶段。
.addEventListener()
document.querySelector('body')
.addEventListener('load', el => {
if (el.tagName === "IMG") { /* do something with the image load */ }
}, true);
评论
document.querySelector('body').addEventListener('load', el=>{if (el.tagName === "IMG") { /* do something with the image load */ }...}, true
< - 在“捕获”阶段而不是“气泡”阶段聆听。