.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() .