Как я могу удалить обработчик события после того, как сработало событие click? - PullRequest
0 голосов
/ 12 апреля 2009

У меня есть событие click, о котором я сообщил div на своей странице.

Как только событие click сработало, я хочу отменить привязку события к этому div.

Как я могу это сделать? Можно ли отменить привязку в самом обработчике событий click?

Ответы [ 4 ]

14 голосов
/ 12 апреля 2009

Используйте функцию " one ":

$("#only_once").one("click", function() {
alert('this only happens once');
});
3 голосов
/ 12 апреля 2009

Взято из найденной документации jQuery здесь :

 $("#unbind").click(function () {
      $("#theone").unbind('click', aClick)
                  .text("Does nothing...");
    });
2 голосов
/ 12 апреля 2009

В простом JavaScript:

var myDiv = document.getElementById("myDiv");

myDiv.addEventListener('click', clicked, false);

function clicked()
{
    // Process event here...

    myDiv.removeEventListener('click', clicked, false);
}

Steve

0 голосов
/ 12 апреля 2009

Здесь описана функция отмены привязки:

http://docs.jquery.com/Events/unbind

Подходит для вашего примера:)

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