Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Закрыть DIV при клике в нем на ссылку или баннер (https://javascript.ru/forum/misc/62181-zakryt-div-pri-klike-v-nem-na-ssylku-ili-banner.html)

xavibeat 28.03.2016 15:04

Закрыть DIV при клике в нем на ссылку или баннер
 
Добрый день, столкнулся с такой проблемой.
Есть три div, у каждого свой id. В каждом div может быть расположена как ссылка так и баннер. Когда div пустой, то при клике внутри его происходит закрытие, но если внутри его есть баннер или ссылка, то при клике по ним, div не закрывается, происходит просто переход. В какую сторону копать, что бы происходило действие. Клик по баннеру или ссылке внутри div, div закрывается и происходит переход.
Пока исхожу из такого кода:
<script>
	$(document).ready(function(){
		$('#link1').click(function () {
			$(this).toggleClass('click');
			});
		$('#link2').click(function () {
			$(this).toggleClass('click');
			});
		$('#link3').click(function () {
			$(this).toggleClass('click');
			});
	});
</script>

<div id="link1">здесь баннер</div>
<div id="link2">здесь блок ссылок</div>
<div id="link3">здесь ссылка</div>

karden 30.03.2016 20:41

Событие привязано к DIV, а у баннеров и ссылок свои события. Поэтому я бы предложил перебрать все элементы внутри DIV и удалить там обработку событий или прописать там нужное событие.

См. https://learn.javascript.ru/event-bubbling
и это https://learn.javascript.ru/event-delegation


Часовой пояс GMT +3, время: 19:41.