请简述 DOM 事件模型或 DOM 事件机制

DOM的事件模型分为两种:

  • 捕获
    • 从外向内找监听函数,叫做事件捕获
  • 冒泡
    • 从内到外找监听函数,叫做事件冒泡

DOM的事件机制

  1. 捕获阶段:事件从window对象自上而下向目标节点传播
  2. 目标阶段:目标节点处理事件
  3. 冒泡阶段:事件从目标节点自下而上向window对象传播

监听祖先元素

可以称之为事件委托,由于冒泡阶段会从子节点向上传播到父节点,因此可以监听父节点来处理子节点的事件。 优点:

  1. 由于只需要监听一个父节点不需要一个个监听子节点,达到节约监听数,可以减少内存消耗。
  2. 可以监听动态生成的元素