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

250
Vistas
¿Cómo agregar un oyente de teclado a mi controlador onClick?

tengo lo siguiente:

 class MyTextArea extends React.Component { handleClick = () => { this.focus(); } focus = () => this.ref.focus; handleRef = (component) => { this.ref = component; }; render() { return ( <div className="magicHelper" onClick={this.handleClick}> <textarea></textarea> </div> ); } }

Mi CSS:

 .magicHelper { width: 100%; height: 100%; } textarea { line-height: 32px; }

Necesito esto porque necesito que el marcador de posición del área de texto esté centrado horizontal y verticalmente en la página. Dado que las áreas de texto no pueden centrar verticalmente el texto, necesito mantener corta la altura del área de texto. Por lo tanto, necesito hacer que cuando el usuario haga clic fuera del área de texto, pensando que está haciendo clic en el área de texto, el área de texto se enfoca automáticamente.

Esto está causando un error de ESLint:

"Visible, non-interactive elements with click handlers must have at least one keyboard listener" .

¿Cómo puedo actualizar lo anterior para pasar eslint?

over 4 years ago · Santiago Trujillo
3 Respuestas
Responde la pregunta

0

https://github.com/evcohen/eslint-plugin-jsx-a11y/blob/master/docs/rules/click-events-have-key-events.md

Parece que esta regla es para hacer cumplir los estándares de accesibilidad.

Basado en esto, cambie su código para hacer algo como esto

 <div className="magicHelper" onClick={this.handleClick} onKeyDown={this.handleClick}>

También podría deshabilitar la regla en eslint, supongo que depende de la preferencia.

over 4 years ago · Santiago Trujillo Denunciar

0

de documentos ESLINT:

Enforce onClick va acompañado de al menos uno de los siguientes: onKeyUp, onKeyDown, onKeyPress. La codificación para el teclado es importante para los usuarios con discapacidades físicas que no pueden usar un mouse, compatibilidad con AT y usuarios de lectores de pantalla.

en este caso, puede deshabilitar la regla o actualizar su código. es mejor actualizar su código para cumplir con los estándares web.

 class MyTextArea extends React.Component { handleClick = () => { this.focus(); } handleKeyDown = (ev) => { // check keys if you want if (ev.keyCode == 13) { this.focus() } } focus = () => this.ref.focus; handleRef = (component) => { this.ref = component; }; render() { return ( <div className="magicHelper" onClick={this.handleClick} onKeyDown={this.handleKeyDown}> <textarea></textarea> </div> ); } }
over 4 years ago · Santiago Trujillo Denunciar

0

Tengo este tipo de problema al enviar el mensaje de git. Tengo el siguiente código en ese momento.

 <span onClick={myHome} className="home__home-header__mybb__mybb-links__ML1" >

para evitarlo, utilicé el siguiente atributo en el elemento.

aria-hidden="verdadero"

over 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