Показать сообщение отдельно
  #3 (permalink)  
Старый 23.04.2012, 11:02
что-то знаю
Отправить личное сообщение для devote Посмотреть профиль Найти все сообщения от devote
 
Регистрация: 24.05.2009
Сообщений: 5,176

Сообщение от Octane
Я ожидал какую-нибудь магию с VB-скриптми и htc-файлами
Да заманчиво Но я пока не думал над этим что бы сделать это через VBScript но htc юзать не хочу.

Сообщение от Octane
Расскажи, пожалуйста, как реализуется event capturing.
Система особо не сложная, все события проходят через прокси метод, который ловит все события до самого верхнего элемента при этом пропуская событие дальше по цепи, а затем получив последнее событие на текущем распространении, запускает уже оригинальные методы, те что были изначально повешены.

Картина примерно такая:

Здесь иллюстрируется не совсем понятно, но допустим при возникновении события на элементе TD, не срабатывает всплытие, а идет перенаправление на прокси метод, который запоминает ссылку на элемент в котором произошло событие, и так для каждого элемента до самого верха. После того как событие достигло верхнего элемента, запускается уже планировщик, который проходит по всем элементам которые прокси сохранил в неком кеше для планировщика. В итоге планировщик по ним проходит дважды, сначала сверху-вниз, затем снизу-вверх. Тем самым получая нужный нам эффект.

Мда, объясняющий с меня херовый конечно
__________________
хм Russians say завтра but завтра doesn't mean "tomorrow" it just means "not today."
HTML5 history API рассширение для браузеров не поддерживающих pushState, replaceState
QSA CSS3 Selector Engine

Последний раз редактировалось devote, 23.04.2012 в 11:05.
Ответить с цитированием