jQuery « Отличить клик на родительском от клика на заданном (дочернем) элементе
http://jsfiddle.net/tdGNv/
Нужно, чтобы при клике на любом элементе, кроме заданного #lol выполнялась функция.
Но на данный момент при клике на элементе #lol происходит, как я понял, и событие соответствующее клику на родительском элементе, из-за чего функция всё-равно выполняется. Как осуществить такое?
Вот дополнил выводом имени элемента, по которому кликаем:
http://jsfiddle.net/hBEMp/
Выходит, кликнув на кнопке, клик на кнопке так таковой не обрабатывается - имя "кнопка" не выводится, а выводится имя "родитель", хотя фактически мы нажали лишь на кнопку...
Нужно, чтобы при клике на любом элементе, кроме заданного #lol выполнялась функция.
Но на данный момент при клике на элементе #lol происходит, как я понял, и событие соответствующее клику на родительском элементе, из-за чего функция всё-равно выполняется. Как осуществить такое?
Вот дополнил выводом имени элемента, по которому кликаем:
http://jsfiddle.net/hBEMp/
Выходит, кликнув на кнопке, клик на кнопке так таковой не обрабатывается - имя "кнопка" не выводится, а выводится имя "родитель", хотя фактически мы нажали лишь на кнопку...
1 ответов
http://jsfiddle.net/L39LB/
Но это очень плохо — использовать звездочку — вы на каждый элемент в документе вешаете событие click, это пц как плохо. Гораздо лучше повешать всего одно событие click на document и у него смотреть на e.target, но тогда не будет работать клик по элементам, у которых есть e.stopPropagation(), так как их клик не дойдет до корня документа. Понимаете о чем я?
Но это очень плохо — использовать звездочку — вы на каждый элемент в документе вешаете событие click, это пц как плохо. Гораздо лучше повешать всего одно событие click на document и у него смотреть на e.target, но тогда не будет работать клик по элементам, у которых есть e.stopPropagation(), так как их клик не дойдет до корня документа. Понимаете о чем я?