Контекст
Event flow — путь, который DOM-событие проходит по дереву элементов: от корня к цели и обратно. Это модель W3C из трёх фаз.
Три фазы
- Capturing (погружение) — от
window/document вниз к целевому элементу.
- Target — на самом элементе-цели.
- Bubbling (всплытие) — от цели вверх к предкам.
window → … → parent → target → parent → … → window
[ capture ] [target] [ bubble ]
parent.addEventListener("click", fn, true);
parent.addEventListener("click", fn, false);
Зачем знать
- Понимать порядок срабатывания нескольких слушателей.
- Делегирование обычно на bubble.
- Редкие кейсы (оверлеи, «перехватить раньше детей») — capture.
Итог: event flow — маршрут события по DOM: вниз (capture) → цель → вверх (bubble).