Autor | Zpráva | ||
---|---|---|---|
P-ierre Profil * |
#1 · Zasláno: 25. 7. 2013, 16:10:13
<tr onclick="oznac(1);"><td><input type="checkbox" id="id_1" /></td><td><img onclick="popup_komentar(1);" src="./komentar.png" alt="zobrazit komentář" /></td><td>(další data)</td></tr> Mám funkci oznac(), která se provede po kliknutí na příslušný řádek. Jenomže řádek se mi logicky označí i ve chvíli, kdy kliknu na obrázek s komentářem. Potřeboval bych docílit situace, kdy se řádek označí při kliknutí do řádku kamkoliv kromě obrázku. Zkoušel jsem dát obrázku onclick="return false; popup_komentar(1);", ale to nepomohlo. Máte někdo nějaké nápady? |
||
Kcko Profil |
musíš vypnout probublávání ... https://developer.mozilla.org/en-US/docs/Web/API/event.cancelBubble
nebo https://developer.mozilla.org/en-US/docs/Web/API/event.stopPropagation ted si nejsem jistý a mizím z práce, jedno z toho to bude. |
||
Radek9 Profil |
#3 · Zasláno: 25. 7. 2013, 17:00:48
Kcko:
cancelBubble je zastaralá a nekompatibilní vlastnost, kterou si přidala Mozilla. Používat výhradně stopPropagation .
|
||
Kcko Profil |
#4 · Zasláno: 25. 7. 2013, 17:13:21
Radek9:
Asi jo, já používám jQuery, ale trefil jsem se ;) |
||
pako Profil * |
#5 · Zasláno: 25. 7. 2013, 17:16:53
[#3] Radek9
cancelBubble je vlastnost event objektu v starsich IE (do verzie 8 vratane). cize ak ich chces podporovat musis pouzit tuto vlastnost.
[#1] P-ierre skus nieco taketo: http://jsfiddle.net/tAma7/1/ |
||
_es Profil |
#6 · Zasláno: 25. 7. 2013, 17:25:29
P-ierre:
Do kódu to skombinuješ nejako takto: klikatelný div, ve kterém je odkaz |
||
Chamurappi Profil |
#7 · Zasláno: 25. 7. 2013, 17:35:11
Reaguji na Radka9:
Ne, vlastnost cancelBubble je od Microsoftu a Mozilla byla (tuším) poslední prohlížeč, který ji odmítal podporovat. Žádná závažná nekompatibilita v ní nespočívá, protože nastavení vlastnosti nevyvolává chybu (na rozdíl od zavolání méně podporované metody stopPropagation ).
|
||
Radek9 Profil |
#8 · Zasláno: 25. 7. 2013, 17:42:32
pako, Chamurappi:
Aha, tak to se omlouvám za bludy. Asi jsem to měl nějak špatně zafixováno. |
||
P-ierre Profil * |
#9 · Zasláno: 26. 7. 2013, 20:33:48
Díky všem za rady.
Nakonec jsem našel jquery kód, který jsem použil a funguje: [pre][$('tr').on('click', function(e) { if( $(e.target).is('img')) return; alert('I am clickable'); });/pre] |
||
Časová prodleva: 11 let
|
0