Skip to content

事件代理(委托)是什么?

事件代理

  • 用 e.target 获取触发元素
  • 用 matches 来判断是否是触发元素

代码演示:

js
const p = document.getElementById('p');
const body = document.body;
p.addEventListener('click', (e) => {
  e.stopPropagation(); // 注释后,就会事件冒泡
  console.log(1);
});
body.addEventListener('click', (e) => {
  const target = e.target;
  if (target.matches('p')) {
    console.log(2);
  }
});

基于 MIT 许可发布