É necessário inserir a senha e pressionar Enter para acionar um evento em segundo plano. Parece ser um requisito muito simples, mas encontra muitas dificuldades.
Há principalmente uma caixa de texto de entrada de senha no conteúdo HTML e um botão para acionar eventos de fundo.
1. Depois que a caixa de texto da caixa de texto obtém o foco, pressione Enter diretamente e a página será atualizada.
Após um estudo cuidadoso do código, acontece que, quando houver apenas um controle da caixa de texto na página, a página atualizará ao pressionar Enter.
Como lidar com isso: Adicione um controle de caixa de texto oculto à página.
O princípio específico é desconhecido!
2. Use jQuery para implementar o método:
$ (document) .ready (function () {$ ("#tbPassword"). focus (); $ ('#bPassword'). KeyDown (function (e) {if (e.KeyCode == 13) {$ ("#ctl00_contentbody_btnaccept_linkbutton) [0] .click;3. Por vários motivos, não posso usar o método de implementação do jQuery, então tenho que mudar para JS. Sua compatibilidade é o problema mais problemático.
document.getElementByidx_x_x ("tbPassword"). OnKeypress = function (event) {var keynum; if (window.event) // ie {keynum = window.event.keycode; } else if (event.which) // Netscape/Firefox/Opera {KeyNum = Event.Which; } if (keynum == 13) document.getElementbyidx_x_x ('ctl00_contentbody_btnaccept_linkbutton'). click (); }ilustrar:
Leia as teclas do teclado no IE:
keynum = event.KeyCode; // letra d, keynum = 100 keychar = string.fromCharcode (keynum); // converte KeyNum para o personagem D
Leia as teclas do teclado no Firefox:
keynum = event.which; // letra d, keynum = 100 keychar = string.fromCharcode (keynum); // converte KeyNum para o personagem D
Por exemplo, no IE, existem apenas atributos de código -chave, enquanto o Firefox tem quais atributos de Charcode e Opera possui o KeyCode e quais atributos.
Portanto, essa questão de compatibilidade foi abordada no jQuery.
O exposto acima é tudo sobre este artigo, espero que seja útil para o aprendizado de todos.