Удаление обработчика событий

.unbind()

Метод необходим для удаления обработчиков событий, установленных на выбранных элементах методами bind(), one() или методами с узким назначением (click(), focus() и.т.д). Метод имеет три варианта использования:

.unbind([eventType], [handler(eventObject)]):jQuery1.0

eventType — тип обрабатываемого события. Например "click", "resize" и.т.д.
handler(eventObject) — функция, установленная в качестве обработчика, который необходимо удалить.

.unbind([eventType], false):jQuery1.4

Удаляет обработчики, которые были установлены методом .bind(eventType, [eventData], false) позволяет установить обработчики, сразу на несколько событий.

eventType — тип обрабатываемого события. Например "click", "resize" и.т.д.

.unbind(eventObject):jQuery1.4

Позволяет удалить обработчик события при его непосредственном вызове.

eventObjectобъект обрабатываемого события, который был передан в обработчик.

Примеры

Простой пример:

var handler = function() {
  alert('Шла Саша по шоссе');
};
$('#foo').bind('click', handler);  // установим обработчик нажатия кнопки мыши на элементе foo
$('#foo').unbind('click', handler); // удалим обработчик


Если не указывать какой именно обработчик следует удалить, будут удалены все обработчики заданного события:

$('#foo').unbind('click'); // удалим все обработчики события 'click' у элемента foo


А если не указывать тип события, то у выбранных элементов будут удалены обработчики всех событий:

$('#foo').unbind(); // удалим все обработчики установленные на элементе foo

Ссылки

Поисковые ключи:
  • удалить обработчик событий
  • удаление обработчика событий
  • .unbind()
  • unbind()