Överlappande länkar. Båda triggas...

JavaScript

3 svar · 1 873 visningar · startad av bassebhu

Medlem sedan nov. 20016 480 inlägg
Trådstart#1

Hallå!

Jag har en stor div (project) som i sig är en länk via jQuery. När man hovrar diven så dyker en annan div upp (edit-project) inuti den stora. Klickar man på den nya så öppnas en lightbox och jag vill att länken för den stora inte ska triggas. Just nu öppnas lightboxen, men avbryts och man skickas vidare till länken från den stora diven.

Hur kommer man runt detta? Positionera den nya diven med z-index högre än föräldern? Lägga den utanför förälderdiven? Stänga av scriptet för den stora om den lilla klickas?

Mitt försök som inte funkar:

$('.project').on('click', function(e) {
	e.preventDefault();
	if( !$('.edit-project').is("clicked") ) {
		window.location = '?a=project&pid='+$(this).data('pid');
	}
});

Tack för tips!

Medlem sedan juni 20019 519 inlägg
#2

du få nog binda ett click event på din "popup" att inte bubbla neråt.

Medlem sedan mars 2006296 inlägg
#3

Du kan förhindra att eventet bubblar upp med e.stopPropagation();
http://api.jquery.com/event.stoppropagation/

e.stopPropagation();
Medlem sedan nov. 20016 480 inlägg
#4

Det tog lite trixande, men e.stopPropagation(); var nyckeln. Tack! :)

267 ms totalt · 4 externa anrop · v20260731065814-full.d34c6d5a
129 ms — deklarationer (db)
0 ms — hämta statistik (cache)
132 ms — hämta tråd, inlägg och bilagor (db)
133 ms — ändringar (db)