Höchstwahrscheinlich ist dieses Problem gut dokumentiert, aber ich konnte keine einfache Antwort finden.Verhindern, dass der click-event-Handler der übergeordneten div ausgelöst wird, wenn auf das untergeordnete Element geklickt wird
Ich habe Click-Event-Handler für ein div und ein Kind-Element eingebettet. Wenn ich auf den eingebetteten Elementhandler klicke (ein Symbol im Beispiel unten), sind sowohl das Symbol als auch die untergeordneten div-Handler Auslöser. Während das gewünschte Verhalten wäre, nur Icon-Click-Event-Handler auszulösen.
Was wäre eine Best-Practice-Umgehung dieses Problems? Danke im Voraus!
$(function(){
$('#test_button').on('click', function() {
alert('Button');
});
$('#test_div').on('click', function() {
alert('Div');
});
});
<link href="http://netdna.bootstrapcdn.com/font-awesome/4.4.0/css/font-awesome.min.css" rel="stylesheet"/>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id= 'test_div'>
<i id = "test_button" class="fa fa-times" aria-hidden="true"></i>
</div>