Me gustaría iniciar una acción (habilitando autocompletar) cuando el usuario escribe '@'. Sin embargo, no sé cómo hacerlo correctamente. Tengo jQuery disponible.Detectar el carácter ingresado con JavaScript
Por lo general, en un teclado QWERTY, que es la siguiente:
$('textarea').live('keydown', function(e) {
if (e.which === 50) {
console.log('@ has been entered.');
}
});
Sin embargo, no funciona correctamente en un teclado AZERTY. El código clave = 50 corresponde a la clave é~/2
. Para escribir '@' en el teclado AZERTY, es la tecla AltGr + à@/0
.
Editar: No estaba claro. Autocompletar comienza cuando se ingresa @, y solo después de eso. Por ejemplo, cuando alguien ingresa "Hello @" comienza, sin embargo, cuando escribe "Hello @nothing else", el mensaje completo no hará nada. Ejemplo: http://mrkipling.github.com/jQuery-at-username/ (funciona solo en el teclado QWERTY).
D'oh, yo no darse cuenta de lo StackOverlow tiene exactamente lo que necesito con la función de autocompletar nombre de usuario en el comentario. – jcisio