#jquery #event-delegation #jquery-events
#jquery #событие-делегирование #jquery-события
Вопрос:
Я прикрепил делегированный обработчик событий таким образом:
$('#static-div').on('click.myNamespace', '.attach-to-this', someFunction);
Как мне затем, позже, отменить это действие и удалить все делегированные события в этом пространстве имен? static-div
Элемент всегда находится на странице, и изменяется только его содержимое.
Я пробовал следующее, но ни одно из них не сработало:
$('#static-div').off('myNamespace');
$('#static-div').off('myNamespace', '**');
Я чувствую, что это должно быть проще, чем есть….
Спасибо.
Комментарии:
1. Вы пробовали
$('#static-div').off('.myNamespace');
?2. Возможно, это моя проблема — я не ставил точку перед пространством имен… Я попробую.
3. Это было оно! Да, я действительно думал, что мне не нужна точка. Если вы хотите дать официальный ответ на этот вопрос, я приму его.
Ответ №1:
Вам нужно указать период при удалении событий из пространства имен.
Например, $('#static-div').off('.myNamespace');
Смотрите документы для получения дополнительной информации: http://api.jquery.com/off /