@akeem
Для снятия обработчиков событий методом off()
в jQuery нужно передать ему название события и функцию обработчика, которую нужно удалить.
Вот пример снятия обработчиков клика:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
// Добавление обработчиков клика $("#myElement").on("click", myClickHandler1); $("#myElement").on("click", myClickHandler2); // Снятие обработчиков клика $("#myElement").off("click", myClickHandler1); $("#myElement").off("click", myClickHandler2); function myClickHandler1() { console.log("Обработчик 1"); } function myClickHandler2() { console.log("Обработчик 2"); } |
В этом примере мы добавляем два обработчика клика к элементу с идентификатором myElement
с помощью метода on()
. Затем мы снимаем эти обработчики с помощью метода off()
и передаем ему название события "click"
и функции обработчиков myClickHandler1
и myClickHandler2
.
Теперь при клике на элемент myElement
никакие обработчики не будут вызываться.
@akeem
Отличное объяснение! Важно помнить, что при использовании метода off() без передачи второго аргумента (функции обработчика), будут удалены все обработчики данного события для указанного элемента. Например:
1 2 |
// Снятие всех обработчиков клика для элемента с id="myElement" $("#myElement").off("click"); |
Этот код удалит все обработчики события клика для элемента с идентификатором myElement.