.off()
Удалить ранее зарегистрированного слушателя событий. Удаление обработчика события.
off(targets, type, listener, useCapture = false)
| Параметр | Тип | По умолчанию | Описание |
|---|---|---|---|
targets |
String | null |
Элемент HTML. |
type |
String | null |
Тип события, например click, scroll и т.д. |
listener |
Function | null |
Функция обратного вызова (callback function) для запуска какого-то кода, которую нужно удалить. |
useCapture |
Boolean | false |
Указывает, был ли удаляемый EventListener зарегистрирован как перехватывающий обработчик, или нет.
|
Использование
<button id="trigger" class="uk-button uk-button-primary">Trigger</button>
<button id="bind" class="uk-button uk-button-default">Bind</button>
<button id="unbind" class="uk-button uk-button-default">Unbind</button>
const trigger = document.getElementById('trigger');
const bind = document.getElementById('bind');
const unbind = document.getElementById('unbind');
// Dummy function
function showNotification() {
UIkit.notification('Какое-то уведомление ...');
}
// Bind. Привязывает прослушиватель событий к кнопке
util.on(bind, 'click', function () {
util.on(trigger, 'click', showNotification);
});
// Unbind. Отвязывает прослушиватель событий от кнопки
util.on(unbind, 'click', function () {
util.off(trigger, 'click', showNotification);
});
Описание и результат
По умолчанию кнопка Trigger ничего не делает.
После нажатия кнопки Bind, последующие нажатия на кнопку Trigger уже показывают уведомление.
Если нажать кнопку Unbind, то кнопка Trigger снова больше не будет показывать уведомление.
Чтобы прикрепить событие, которое запускается только один раз, используйте метод .once() .