2012-07-11 25 views
8

Tengo un formulario html. Los usuarios pueden completar el formulario en ambos idiomas, inglés y persa. pero tengo una entrada de captcha que los usuarios deben llenar en inglés.cambiar el diseño del teclado con javascript

Si el diseño del teclado del usuario es persa, lo que se escribe en este campo debe cambiar a inglés, así que necesito un código que cambie la distribución del teclado al enfocar este texto de entrada.

¿Es posible cambiar el diseño del teclado con javascript ??

+2

Sí se puede, captura cada pulsación de tecla y marca e.que luego reemplaza los caracteres para que se correspondan con el nuevo diseño del teclado al que apunta. –

+0

No se puede detectar/cambiar el diseño de la placa clave a través de javascript. – Ramesh

+0

Tengo un gran problema, hay algunos diseños de teclado persas diferentes en Windows y en Linux, y esto complica el reemplazo del personaje. :( –

Respuesta

6

Usted no será capaz de cambiar la disposición del teclado usando JS, pero se puede capturar el evento KeyDown y reemplazar el personaje con algo como esto:

http://jsfiddle.net/SxdKZ/

$('textarea').on('keydown', function(e){ 

    console.log(e.keyCode); 
    if(e.keyCode == 90){ 
     e.preventDefault(); 
     $(this).append('y').focus(); 
    } 
    if(e.keyCode == 89){ 
     e.preventDefault(); 
     $(this).append('z').focus(); 
    } 

});​ 
+0

gracias, pero hay algunos diferentes diseño de teclado persa en Windows y en Linux por lo que los códigos de tecla no son los mismos en Windows y Linux para reemplazar el tema fácilmente como tu código :( –

+2

... podrías detectar el sistema operativo con 'navigator.platform' :) si es solo para una captura, algo como http://mottie.github.com/Keyboard/ ¿podría ser una solución más fácil? –

Cuestiones relacionadas