Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

118
Views
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 answers
Answer question

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 Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!