Как реализовать порядок событий в родительских / дочерних элементах с помощью jquery - PullRequest
1 голос
/ 17 июня 2011

У меня есть родительские и дочерние элементы на моей веб-странице, где для обоих определены отдельные обработчики событий.Я протестировал в Firefox, где обработчик события для родительского элемента выполняется первым.Я хочу, чтобы он выполнялся другим способом - сначала выполняется обработчик событий дочернего элемента.

Я читал об использовании bind, stopPropagation, protectDefault и т. Д., Чтобы это произошло, но я немного запутался в том, какзаставить это работать?Может кто-нибудь пролить свет на эту тему?

Вот как я реализую обработку событий ....

$('#Sidebar ul li .DeleteList').live('click', function(e) {
        alert("I was deleted");
});

$('#Sidebar ul').delegate('li', 'click', function(e) {
        alert("I was selected");
});

enter image description here

1 Ответ

0 голосов
/ 17 июня 2011

Почему бы не быть последовательным и просто использовать .live() для обоих? : D

$('#Sidebar ul li .DeleteList').live('click', function(e) {
    alert("I was deleted");
});

$('#Sidebar ul li').live('click', function(e) {
    alert("I was selected");
});

Таким образом «удаленный» запускается первым.

скрипка: http://jsfiddle.net/c9sBD/

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...