У меня есть ситуация, когда:
- Я добавляю прослушиватель кликов в контейнер
- После щелчка я удаляю слушателя, чтобы только ребенок мог распознать щелчок
- После нажатия дочернего элемента функциональность контейнера восстанавливается
_______________________
| #container [#child] |
|_______________________|
Моя оригинальная идея:
var toggleContainer = function() {
var width = ($('#container').width() > 299) ? 145 : 300;
$('#container').animate({ width: width }).off('click');
}
$('#container').click(toggleContainer);
$('#child').click(toggleContainer, function() {
$('#container').on('click', toggleContainer);
});
Функциональность работает, за исключением того, что прослушиватель щелчка контейнера (toggleContainer) никогда не восстанавливается.Я думал, что проблема может заключаться в распространении событий при нажатии на дочернего элемента, но добавление event.stopPropagation () к дочернему элементу нарушает все.
Так что я в замешательстве.Буду очень признателен за любые советы, которые вы можете предложить.Спасибо.