Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

161
Vistas
¿Reaccionar cómo evitar que se active el evento onclick de un padre cuando se hace clic en un niño?

Configuré el accesorio onClick en mi div que navegará a una nueva página cuando se haga clic. svg está absolutamente posicionado. ¿Cómo evito el evento de clic en el elemento svg ?

Ya probé stopPropagation() pero no funciona.

 <div className={classes.container} onClick={() => navigate(`${props.productName}`)} > <img src={props.image} alt="" /> <svg></svg> </div>
about 4 years ago · Santiago Trujillo
3 Respuestas
Responde la pregunta

0

Bueno, la respuesta obvia sería ponerlo fuera del div .
Pero si realmente no puedes, siempre puedes usar CSS para esto.

Intenta usar pointer-events

Ejemplo:

html-

 <div className={classes.container} onClick={() => navigate(`${props.productName}`)} > <img src={props.image} alt="" /> <svg className='no-events'></svg> </div>

CSS-

 .no-events { pointer-events: none; }
about 4 years ago · Santiago Trujillo Denunciar

0

Compruebe si e.target === e.currentTarget .

 function Example() { function handleClick(e) { if (e.target === e.currentTarget) { console.log('Only container clicked'); } } return ( <div className="container" onClick={handleClick} > <button>Click me!</button> </div> ); } ReactDOM.render( <Example />, document.getElementById('react') );
 #react { padding: 0; border: 0; margin: 0;} .container { border: 5px solid white; padding: 1em; background-color: lightblue; } div:hover { border: 5px solid cornflowerblue; } div:hover, button:hover { cursor: pointer; }
 <script src="https://cdnjs.cloudflare.com/ajax/libs/react/17.0.2/umd/react.production.min.js"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/react-dom/17.0.2/umd/react-dom.production.min.js"></script> <div id="react"></div>

about 4 years ago · Santiago Trujillo Denunciar

0

Puedes lograrlo haciendo esto.

  1. Compruebe la etiqueta del elemento de destino cuando se activa el evento.
  2. Asigne identificadores a los elementos y ejecute su código en función del identificador.
  3. Use los eventos de puntero de CSS para deshabilitar los eventos de puntero de ese elemento.
about 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda