親ノードと子ノードがあります。どちらも「クリック」イベントリスナーを持っています。<a> は子要素であるため、親 <div> をクリックしないとクリックできないため、常に親 <div> のイベントがトリガーされます。親 <div> のイベントをトリガーせずに、子要素 <a> のイベントを取得するにはどうすればよいですか? jsFiddleとコードは次のとおりです:
HTML
<div id="container">
<a href="" id="link"></a>
</div>
CSS:
#container {
width:100px;
height:100px;
background:blue;
position:relative;
cursor:pointer;
}
#link {
width:20px;
height:20px;
background:green;
position:absolute;
top:10px;
left:10px;
}
JS:
$('#container').on('click', function() {
alert('container');
});
$('#link').on('click', function() {
alert('link');
});