Как открепить обработчики событий, которые были связаны через jQuery, без использования jQuery - PullRequest
3 голосов
/ 10 октября 2010

Скажите, у меня есть следующий jQuery:

$('#myelement').bind('click', foo);

Как отменить привязку этого события без использования jQuery?

Событие не отображается ни в одном из следующих методов элемента DOM:

var domElement = document.getElementById('myelement');
domElement.onclick // == null
domElement.click // == undefined

Так как же я могу отменить привязку, не используя jQuery, такой как следующий?

$('#myelement').unbind()

1 Ответ

2 голосов
/ 10 октября 2010

Если вы используете последнюю версию jQuery, это будет работать:

delete $.cache[document.getElementById("myelement")[$.expando]].events.click;

Вы можете проверить это здесь .

Обратите внимание, что это неДля полной очистки вы можете использовать реализацию jQuery .removeEvent () , если хотите очистить все обработчики.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...