webForumDet fria alternativet

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

JavaScript

3 svar · 1 852 visningar · startad av bassebhu

Medlem sedan nov. 20016 480 inlägg
Frågan#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! :)

289 ms totalt · 4 externa anrop · v20260731065814-full.a51de22e
151 ms — deklarationer (db)
0 ms — hämta statistik (cache)
134 ms — hämta tråd, inlägg och bilagor (db)
151 ms — ändringar (db)