.triggerHandler() – выполнение всех обработчиков событий
.triggerHandler() – вызывает выполнение обработчиков заданного события у выбранных элементов. Cамо событие, при этом, не происходит.
Метод также выполнит любой метод, вызываемый on{eventType}()
найденный на элементе.
.triggerHandler( eventType [, extraParameters ] )
- eventType – строка с названием JavaScript события. Например, click или submit.
- extraParameters – массив с дополнительными параметрами, которые будут переданы в обработчик
Метод .triggerHandler()
работает почти так же, как метод .trigger()
, с несколькими отличиями:
- Метод не будет запускать событие для элементов, обработчик которого вызывается. Например, при вызове обработчика события отправки формы
.triggerHandler( "submit" )
само событие.submit()
вызвано не будет. - В то время как
.trigger()
действует на все подходящие элементы в объекте jQuery,.triggerHandler()
срабатывает только для первого найденного элемента. - Событие, указанное в
.triggerHandler()
, не всплывает по DOM-дереву, так как событие не генерируется. Следовательно, делегированные обработчики не выполняются. - Метод
.triggerHandler()
возвращает значение, полученное из последнего запущенного обработчика. Если ни один обработчик не запущен, метод возвращаетundefined
.
Пример
Если методом .triggerHandler() мы вызовем событие .focus(), то стандартное поведение браузера не сработает, а запустятся только обработчики.
[codepen_embed height=”300″ theme_id=”0″ slug_hash=”LdpBLx” default_tab=”js,result” user=”AmateR”]See the Pen LdpBLx by Aleksei (@AmateR) on CodePen.[/codepen_embed]