
Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
22.06.2012, 22:46:13
|
|||
|---|---|---|---|
Делегированные события срабатывают на всех элементах сразу?! |
|||
|
#18+
Седня поймал какой-то странный баг - так и не понял его причину. Есть экшен для навигации без перезагрузки: $('body').on 'click', 'a.js-navigate', (e) -> ... И обычные экшены для редактирования и обновления контента: $('.post').on 'click', '.edit', (e) -> ... $('.post').on 'click', '.refresh', (e) -> ... И вдруг, при нажатии на навигацию - начали срабатывать все сразу, почему так и не понял (единственно, я поменял логику удаления элементов - удаляю их из ДОМ но события сразу не удаляю, может дело в этом?). У кого-то было такое? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
22.06.2012, 23:26:51
|
|||
|---|---|---|---|
Делегированные события срабатывают на всех элементах сразу?! |
|||
|
#18+
Ахренеть, есть след структура: <div class='post'> <a class='js-refresh'></a> <a class='js-edit'></a> </div> есть слушатели $('.post').on('.js-refres', refresh) $('.post').on('.js-edit', edit) я щелкаю на js-refresh - срабатывают оба, причем в обработчике js-edit показывает что e.srcElement = js-refresh. Как такое возможно? Получается не сразу, только путем некоторых манипуляций с созданием и удалением ДОМ обьектов, че за чертовщина. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
23.06.2012, 00:48:58
|
|||
|---|---|---|---|
Делегированные события срабатывают на всех элементах сразу?! |
|||
|
#18+
так ты посмотри инспектором что получилось после твоих манипуляций, небось ссылку в ссылку заложил ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
23.06.2012, 16:19:20
|
|||
|---|---|---|---|
Делегированные события срабатывают на всех элементах сразу?! |
|||
|
#18+
Смотрел, нет хтмл нормальный. Там очень странно все происходит - создается элемент, потом добавляется сразу в два места (первая ошибка) потом из одного места удаляется (вторая ошибка) и затем при щелчке на кнопки - в таргет показывается что событие пришло с элемента удаленного из дом. Хз как это возможно, я забил. Саму ошибку легко было поправить - я сидел разбирался потому что было интерешно - что такое там происходит - но, после пары часов забросил. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=22&mobile=1&tid=1449658]: |
0ms |
get settings: |
11ms |
get forum list: |
17ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
49ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
34ms |
get tp. blocked users: |
2ms |
| others: | 236ms |
| total: | 371ms |

| 0 / 0 |
