Показать сообщение отдельно
  #1 (permalink)  
Старый 10.07.2013, 22:32
Кандидат Javascript-наук
Отправить личное сообщение для Valdemor Посмотреть профиль Найти все сообщения от Valdemor
 
Регистрация: 30.03.2012
Сообщений: 128

Всплытие событий
Пишу обработчик событий, использующий делигирование. Но возникла проблема.
Вот функция:
function click(selector, callback) {
var temp = function(e) {
   e = e || window.event;
   var target = e.target || e.srcElement;
   if(target.matches(selector)) callback();
}
document.addEventListener("click", temp, false);
}

При этом, я хочу, чтобы срабатывание шло от самого "глубокого" элемента DOM. Т.е. если я поставлю обработчики и на div, и на body, то обработчик div должен сработать первым, несмотря на место в коде. У меня же выходит, что место в коде отыгрывает наибольшую роль.
Как же быть? Как это реализирует jQuery, к примеру? Берет огромный массив обработчиков и положения объектов?
Ответить с цитированием