У меня есть обработчик, который запускается для двух событий:
- Триггер размытия объекта А.
- нажмите на объект B.
Проблема в том, что когда у объекта A есть фокус, и я нажимаю на B, оба события запускаются. Я хочу, чтобы это не случилось. В этом случае обработчик должен выполняться только один раз, потому что внутри есть функция toggle (), которая обнуляется из-за второго вызова. Можно ли как-то очистить все ожидающие события на объекте?
<div id='panel'>Hey!</div>
<input type='text' id='a'>
<div id='b'>Hello</div>
function handler() {
$('#panel').toggle();
}
$('#a').blur(handler);
$('#b').click(handler);
Когда текстовое поле имеет фокус и , пользователь нажимает на div 'b', запускаются два события - размытие ввода a и нажмите div b . Оба события обрабатываются одной и той же функцией, и, поскольку функция случайно переключает другой элемент (панель) , функциональность не выполняется, так как два переключателя взаимно отменяют друг друга. Итак, мне нужен способ очистки всех ожидающих событий для элемента.