Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

126
Visualizações
Evitar onClick del elemento base si se hace clic en onClick del botón de superposición

Tengo un componente <button> superpuesto a un componente <div> que muestra una imagen.

El componente del botón es una [X] roja como se muestra en la siguiente imagen. Tengo un onClick Listener separado para <button> y <div> . Quiero asegurarme de que cuando se activa el onClick del botón, es decir, se hace clic en [X], el onClick de <div> no debería ejecutarse.

¿Como hacer esto?

He intentado esto, pero no funciona
Primero se ejecuta el onClick del <button> y luego se ejecuta el onCLick de <div>

 const onClickButtonHandler = (event) => { event.preventDefault(); console.log("BTN HANDLER") }; const onClickDivHandler = (event) => { console.log("DIV HANDLER") };

ingrese la descripción de la imagen aquí

about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

 document.getElementById('mydiv') .addEventListener('click', function (event) { console.log("div clicked") }); document.getElementById('xAndDiv') .addEventListener('click', function (event) { console.log("x clicked, div click also executes") }); document.getElementById('x') .addEventListener('click', function (event) { event.stopPropagation() console.log("only x click executes") });
 .div { background-image: url( https://png.pngtree.com/thumb_back/fw800/back_our/20190628/ourmid/pngtree-clear-sample-newspaper-spring-forest-playground-background-design-image_276784.jpg); background-size: cover; height: 250px; } .x { color:red; }
 <div id="mydiv" class="div"> <button class="x" id="xAndDiv" >X & Div </button> <button class="x" id="x" >Only X</button> </div>

Debe detener la propagación del evento al hacer clic en el botón

 const onClickButtonHandler = (event) => { event.stopPropagation(); console.log("BTN HANDLER") };

Evita que el evento suba al nivel principal

codesandbox para referencia de reacción https://codesandbox.io/s/awesome-thunder-1x0coz?file=/src/App.js

Leer más sobre stopPropagation en MDN

about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda