/ / Como faço para detectar o estado do CAPS LOCK em um campo de senha [duplicado] - javascript

Como faço para detectar o estado do CAPS LOCK em um campo de senha [duplicado] - javascript

Duplicar Possível:
Como você sabe se o caps lock está usando JavaScript?

Em um formulário da Web, existe alguma maneira de saber se o caps lock está ativado?

Eu suponho que eu poderia verificar fazer um cheque onChange para ver se todos os caracteres estão em maiúsculas. Mas há uma maneira mais direta de fazer isso?

Especificamente, eu estou olhando para implementar uma mensagem "SEU CAPS LOCK IS ON" quando eles entram no campo de senha, semelhante ao modo como a tela de login do Windows faz.

Respostas:

3 para resposta № 1

Você pode encontrar um exemplo decente de como fazer isso aqui: http://www.codeproject.com/KB/scripting/Detect_Caps_Lock.aspx

Você poderia pegar esse código e envolvê-lo em um tipo diferente de evento, ou seja, onfocus ou no carregamento do documento.

Você pode pesquisar no Google por um índice de códigos de chave (eu colocaria um link, mas eu não tenho karma alto o suficiente para postar mais de um link, desculpe).

Por simplicidade, os códigos que você está procurando são 20 (Caps lock).


Instruções copiadas aqui do site (licença: CPOL)

Construindo o roteiro

<script language="Javascript">
function capLock(e){
kc = e.keyCode?e.keyCode:e.which;
sk = e.shiftKey?e.shiftKey:((kc == 16)?true:false);
if(((kc >= 65 && kc <= 90) && !sk)||((kc >= 97 && kc <= 122) && sk))
document.getElementById("divMayus").style.visibility = "visible";
else
document.getElementById("divMayus").style.visibility = "hidden";
}
</script>

Agora temos nosso roteiro pronto para começar. Agora precisamos associar esse script ao nosso formulário.

Usando o script

Vamos adicionar dois itens: uma caixa de texto e um DIV Agora só precisamos chamar o evento onKeyPress.

<input type="password" name="txtPassword" onkeypress="capLock(event)" />
<div id="divMayus" style="visibility:hidden">Caps Lock is on.</div>