Обработка событий нещелчок jQuery () и развязывает () события?

Я хочу присоединить событие щелчка к элементу кнопки и затем позже удалить его, но я не могу добраться unclick() или unbind() событие (события) для работы как ожидалось. В коде ниже, кнопка tan окрасьте и работы события щелчка.

window.onload = init; 
function init() {
    $("#startButton").css('background-color', 'beige').click(process_click);
    $("#startButton").css('background-color', 'tan').unclick();
}

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

8
задан Priyanga 18 October 2019 в 06:27
поделиться

3 ответа

Нет такой вещи как unclick(). Где Вы получали это от?

Можно удалить обработчики одиночных соревнований из элемента вызовом, развяжите:

$("#startButton").unbind("click", process_click);

Если Вы хотите удалить все обработчики, или Вы использовали анонимную функцию в качестве обработчика, можно опустить второй аргумент unbind():

$("#startButton").unbind("click");
19
ответ дан 5 December 2019 в 05:57
поделиться

развяжите Ваш друг.

$("#startButton").unbind('click')
3
ответ дан 5 December 2019 в 05:57
поделиться

Вы уверены, что хотите развязать его? Что, если позже Вы хотите связать его снова, и снова, и снова? Мне не нравится динамическая обработка событий, связывают/развязывают, так как они имеют тенденцию выходить из-под контроля при вызове от различных точек кода.

Можно хотеть рассмотреть альтернативные возможности:

  • изменитесь кнопка "отключила" свойство
  • реализуйте свою логику внутри "process_click" функция

Просто мои 2 цента, не универсальное решение.

0
ответ дан 5 December 2019 в 05:57
поделиться
Другие вопросы по тегам:

Похожие вопросы: