Отключить функцию в качестве обработчика события BX24.unbind

Выберите инструмент для разработки с AI-агентом:

  • используйте Битрикс24 Вайбкод, чтобы создать приложение для Битрикс24 по описанию задачи без знания языков программирования. Агент напишет код и разместит приложение на сервере без ручной настройки хостинга
  • используйте MCP-сервер, чтобы разрабатывать интеграцию через REST API в своем проекте. Агент будет обращаться к официальной REST-документации
BX24.unbind(element: object, eventName: string, func: callable): void;

Метод BX24.unbind снимает с элемента страницы element обработчик func события eventName, который назначил BX24.bind.

Метод работает на странице приложения, где подключена библиотека BX24.js, и не обращается к Битрикс24. Собственный scope методу не нужен.

Снять обработчик можно только по той же ссылке на функцию, которую передали в BX24.bind. Если передать новую функцию, даже с тем же кодом, обработчик останется, а ошибки не будет. Поэтому функцию, которую понадобится снять, сохраняйте в переменную или создавайте через BX24.proxy.

Параметры метода

Обязательные параметры отмечены *

Название
тип

Описание

element*
object

Элемент страницы, у которого нужно снять обработчик

eventName*
string

Название события без префикса on, например click. Для mousewheel метод снимает и обработчик события DOMMouseScroll

func*
callable

Та же функция, которую передали в BX24.bind

Пример кода

Как использовать примеры в документации

Обработчик, который срабатывает только один раз:

<button id="run-action">Запустить</button>

<script>
    BX24.ready(function () {
        const button = document.getElementById('run-action');

        function onClick() {
            console.log('Кнопка нажата');
            BX24.unbind(button, 'click', onClick);
        }

        BX24.bind(button, 'click', onClick);
    });
</script>

Обработка ответа

Метод не возвращает данные (void).

Обработка ошибок

Кодов ошибок метод не возвращает. Если снимать нечего, метод ничего не делает.

Ситуация

Что происходит

Что делать

Обработчик был назначен событию transitionend

Метод снимает обработчик только с transitionend. С событий webkitTransitionEnd, msTransitionEnd и oTransitionEnd, которые добавил BX24.bind, он не снимается

Снять обработчик с каждого из этих событий отдельным вызовом BX24.unbind

В element передан null

Ничего не происходит, ошибки нет

Передать элемент страницы

Продолжите изучение