#3.6 Фазы события, Всплытие и Делегирование на JavaScript
Обработка событий в JavaScript: всплытие, перехват, делегирование и распространение событий
Источник: Nuances of Programming Введение События в JavaScript являются основополагающими для создания интерактивных веб-страниц. Их можно считать движущей силой браузера, заставляющей его выполнять действия от имени пользователя. Когда пользователь наводит мышь на кнопку и нажимает ее, это действие вызывает реакцию браузера, который определяет тип события (в данном случае клик) и выполняет соответствующую функцию, часто в виде обратного вызова. Рассмотрим приведенный ниже код: <button onclick="clickMe()">Click Me</button>
function clickMe() {
alert("I'm button, and I was clicked...
JS: Event delegation (Делегирование событий)
Что Делегирование событий позволяет навесить обработчик события на родителя вместо того, чтобы вешать обработчики на каждый элемент, у которого может быть вызвано событие. Справедливо для ситуации, когда отнотипных событий много. Если их одно-два, смысла в делегировании нет. Почему работает: из-за фичи Event Bubbling (всплытие события). Когда событие происходит с любым элементом на странице, о нём "знают" все предки (событие всплывает как пузырёк воздуха в воде до самого корня DOM)...