standardmäßig Veranstaltung beginnt auf der untersten Ebene des DOM Umgang mit dem Sie haben einen Handler definiert Behandeln Sie das Zielereignis. Angenommen, Sie Ereignis-Listener höher in der Elternkette definiert haben das gleiche Ereignis zu behandeln, werden Sie zu stop the propagation of the event benötigen, wenn Sie über die Schicht behandelt nicht für die Veranstaltung werden wollen Sie beabsichtigen, es in gehandhabt werden:
e.stopPropagation();
sehen Sie, was passiert, wenn Sie diese Zeile im folgenden Beispiel entfernen:
document.querySelector('.inner').addEventListener('click', function(e) {
alert('inner div clicked!');
e.stopPropagation();
});
document.querySelector('.outer').addEventListener('click', function() {
alert('outer div clicked!');
});
.outer {
width: 200px;
height: 200px;
background: blue;
}
.inner {
width: 100px;
height: 100px;
background: green;
}
<div class='outer'>
Outer
<div class='inner'>
Inner
</div>
</div>
Mögliche Duplikat [Prevent Durchführung von Elternereignishandler] (http://stackoverflow.com/questions/139858 2/prevent-execution-von-parent-event-handler) –