У меня есть родительский элемент DIV, в котором есть дочерние элементы div. У меня есть отдельные реализации щелчка для родителя и его дочерних элементов.Нажмите событие в родительском и дочернем объектах
<div id="mainContainer">
<div id="childContainer">
</div>
<div id="childContainer2">
</div>
</div>
$('#mainContainer').click(function() {
console.log('main container');
}).children().click(function() {
console.log('childen');
return false;
});
$('#childContainer2').click(function() {
console.log('child container 2');
});
Это прекрасно работает. но если я нажму на дочерний элемент, тогда событие будет выполняться дважды, и именно так оно и должно работать. Мой вопрос: существует ли способ, который я могу явно записать событие родительскому, которое не повлияет на детей, чтобы дети не могли дважды выполнять функцию щелчка?
Извините, вы можете еще раз объяснить, что вам нужно –
Каков ваш ожидаемый результат http://jsfiddle.net/arunpjohny/hF6L9/1/ –
Вы привязываете два обработчика событий ко второму ребенку. Вы только хотите запустить один из них, и если да, то какой? Возможно, вы ищете 'event.stopImmediatePropagation': http://api.jquery.com/event.stopImmediatePropagation/. –