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

120
Vistas
Cómo detectar que el teclado del usuario es persa o inglés cuando se presionan las teclas numéricas

Quiero detectar que el teclado del usuario es inglés o persa cuando presiona teclas numéricas.

Estoy usando el siguiente código para teclas no numéricas, ¡pero no funciona en teclas numéricas!

 <input type="text" onkeyup="findType(this)"> <script> function findType(element) { let char = new RegExp("[\u0600-\u06FF]"); if (char.test(element.value) === true) { element.style.direction = "rtl" } else { element.style.direction = "ltr" } } </script>

Los dígitos persas del 0 al 9 unicode son de &#1776 a &#1785

about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

una forma de abordar este problema es aprovechar navigator.language Aquí hay una referencia a la documentación

 let keyboard = () => { let lang = navigator.language; if (lang === 'ar') { return 'arabic'; } } window.onload = keyboard;

Esto funcionó cuando cambié el idioma predeterminado de mi navegador Chrome al árabe y pude detectar el cambio de idioma. Una nota rápida, no funcionó cuando habilité el teclado en mi MAC a árabe.

Una vez que hayamos detectado el idioma del teclado, puede completar el resto de sus tareas.

Para navegadores de Internet Explorer más antiguos, creo que necesita usar window.navigator.userLanguage dependiendo del nivel de soporte que requiera su tarea.

Otra idea podría ser probar el tipo de datos de la tecla que se presiona, asumiendo que los tipos de datos pueden ser diferentes de un país a otro.

 let key_pressed = (e) => { let key = e.keyCode; return typeof key; } window.addEventListener('keydown', (e) => { let key = key_pressed(e); console.log(key); })
about 4 years ago · Juan Pablo Isaza 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