jQuery метод .remove()

jQuery объект Callbacks

Определение и применение

jQuery метод .remove() объекта Callbacks удаляет функцию, или несколько функций обратного вызова из списка обратных вызовов объекта. Этот метод возвращает объект обратного вызова к которому он присоединен (this).

jQuery синтаксис:

Синтаксис 1.7:
// удаление одной функции
callbacks.remove( callback )

// удаление нескольких функций
callbacks.remove( callback, ...callback )

callback - Function

Добавлен в версии jQuery

1.7

Значения параметров

ПараметрОписание
callbacksФункция, или несколько функций, перечисленных через запятую, которые будут удален из списка функций обратного вызова объекта.

Пример использования

// возвращаем объект Callbacks и инициализируем переменную этим значением
let myCallbacks = $.Callbacks();

// создаем функции и инициализируем переменные этими значениеми
const fn1 = (val) => console.log("1 " + val), 
           fn2 = (val) => console.log("2 " + val),
           fn3 = (val) => console.log("3 " + val);

// добаляем функции обратного вызова в список обратных вызовов объекта
myCallbacks.add( [fn1, fn2] ); // добавляем несколько функций в массиве
myCallbacks.add( fn3 );  
 
// вызываем все ранее добавленные функции обратного вызова с заданным аргументом
myCallbacks.fire( "hello" );

// вывод в консоль (срабатывает три функции):
1 -  hello
2 -  hello
3 -  hello

// удаляем несколько функций обратного вызова из списка обратных вызовов объекта
myCallbacks.remove( fn2, fn3 );

// вызываем все ранее добавленные функции обратного вызова с заданным аргументом
myCallbacks.fire( "hello" );

// вывод в консоль (срабатывает одна функция):
1 -  hello

// удаляем функцию обратного вызова из списка обратных вызовов объекта
myCallbacks.remove( fn1 );

// вызываем все ранее добавленные функции обратного вызова с заданным аргументом
myCallbacks.fire( "hello" );

// список пуст (нет функций для вызова)

В этом примере мы рассмотрели базовое использование функции $.Callbacks(), которую мы вызвали без параметра и возвратили объект Callbacks. После этого инициализировали три переменные, которые содержат стрелочные функции.

С помощью метода .add() объекта Callbacks мы добавили функции в список обратных вызовов объекта Callbacks, и с помощью метода .fire() этого объекта вызываем все ранее добавленные функции обратного вызова с заданным аргументом. В результате чего мы вывели в консоль текстовые сообщения (срабатывает три функции).

После этого с помощью метода .remove() объекта Callbacks мы удаляем несколько функций обратного вызова из списка обратных вызовов объекта и с помощью метода .fire() этого объекта вызываем все ранее добавленные функции обратного вызова с заданным аргументом. В результате чего мы вывели в консоль текстовое сообщение (срабатывает одна функция).

И в завершении с помощью метода .remove() объекта Callbacks мы удаляем оставшуюся в списке функцию обратного вызова и с помощью метода .fire() пытаемся вызвать все ранее добавленные функции обратного вызова с заданным аргументом. В связи с тем, что список пуст ни одна функция вызвана не будет.

jQuery объект Callbacks