Skip to content

Instantly share code, notes, and snippets.

@luizpicolo
Created December 2, 2024 21:16
Show Gist options
  • Select an option

  • Save luizpicolo/53909fa8c742aba4622019a4cf61e21e to your computer and use it in GitHub Desktop.

Select an option

Save luizpicolo/53909fa8c742aba4622019a4cf61e21e to your computer and use it in GitHub Desktop.
stopProgration
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Bubbling e Capturing</title>
<style>
div {
padding: 20px;
border: 1px solid black;
margin: 10px;
}
</style>
</head>
<body>
<div id="outer">
Outer Div
<div id="middle">
Middle Div
<div id="inner">
Inner Div
</div>
</div>
</div>
<script>
// Função para capturar e mostrar informações do evento
function logEvent(phase, elementId) {
alert(`${phase} no ${elementId}`);
}
const capturing = { capture: false }
const bubbling = false
// Adiciona ouvintes com diferentes fases
document.getElementById('outer').addEventListener('click', (e) => logEvent('Capturing', 'outer'), capturing);
document.getElementById('middle').addEventListener('click', (e) => logEvent('Capturing', 'middle'), capturing);
document.getElementById('inner').addEventListener('click', (e) => logEvent('Capturing', 'inner'), capturing);
document.getElementById('outer').addEventListener('click', (e) => logEvent('Bubbling', 'outer'), bubbling);
document.getElementById('middle').addEventListener('click', (e) => logEvent('Bubbling', 'middle'), bubbling);
document.getElementById('inner').addEventListener('click', (e) => {
logEvent('Bubbling', 'inner');
e.stopPropagation()
}, bubbling);
</script>
</body>
</html>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment