| Фундаментальный недостаток описанных выше способов назначения обработчика –- невозможность повесить несколько обработчиков на одно событие. 
 Например, одна часть кода хочет при клике на кнопку делать её подсвеченной, а другая – выдавать сообщение.
 
 Мы хотим назначить два обработчика для этого. Но новое DOM-свойство перезапишет предыдущее:
 
 
 
input.onclick = function() { alert(1); }
// ...
input.onclick = function() { alert(2); } // заменит предыдущий обработчик
Разработчики стандартов достаточно давно это поняли и предложили альтернативный способ назначения обработчиков при помощи специальных методов addEventListener и removeEventListener. Они свободны от указанного недостатка.
 |