Существует два способа «вызвать» слушателя:
- позвоните напрямую (например,
element.onclick()
)
- отправляет событие в DOM, на которое слушатель ответит
Проблема с первым методом состоит в том, что он не реплицирует событие пузыря, поэтому слушатель может работать не так, как задумано (например, нет связанного объекта события или пузыря, ключевое слово этого слушателя может не быть правильно настроенным).
Проблема со вторым заключается в том, что некоторые браузеры не позволяют программно отправленным событиям совершать определенные действия (например, переходить по ссылкам). Кроме того, в некоторых браузерах вы должны использовать W3C dispatchEvent и в других Microsoft fireEvent .
Поэтому, если слушатель не был специально разработан для работы с одним или другим методом и не вызывается соответствующим образом, ваши шансы на успешное срабатывание слушателя весьма низки.
PS. Некоторые библиотеки предоставляют свою собственную систему событий, с настраиваемыми событиями и пузырьковыми событиями, не являющимися пузырьками, но в этом случае вы должны установить и запустить прослушиватель, используя эту библиотеку, иначе он, вероятно, не будет реагировать ни на один из вышеуказанных методов. 1026 *