Skip to content

Instantly share code, notes, and snippets.

@luizpicolo
Created December 2, 2024 21:07
Show Gist options
  • Save luizpicolo/55a2aa49d53c00853c0aee4276035e56 to your computer and use it in GitHub Desktop.
Save luizpicolo/55a2aa49d53c00853c0aee4276035e56 to your computer and use it in GitHub Desktop.
Capturing e Bubling
<!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'), bubbling);
</script>
</body>
</html>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment