В настоящее время я пишу пользовательский класс контекстного меню, который в основном использует jQuery.
Мы вызываем функцию, чтобы назначить контекстное меню определенному элементу в DOM.Функция assign добавляет необходимую разметку в DOM, а затем добавляет поддержку клавиатуры, добавляя функцию-обработчик в метод $(document).keydown()
.
Как только кто-то нажимает на сам документ, контекстное меню удаляется.из DOM.Если пользователь затем снова нажимает на элемент, мы снова добавляем разметку в DOM и переназначаем функцию обработчика.
Проблема, с которой я сталкиваюсь, заключается в том, что обработчики событий добавляются каждый раз, когда пользовательнажимает на элемент.Есть ли простой способ с помощью jQuery удалить обработчик, назначенный на $(document).keydown()
с помощью функции присвоения only ?
В моем скрипте есть другие функции, которые также добавляют прослушиватели для $(document).keydown()
событие, и я не хочу удалять все эти функции - только те, которые добавлены сценарием назначения контекстного меню.Это возможно с jQuery?