Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

[Dúvida] Resposta alternativa é boa prática?

Oi, pessoal, boa noite!

Antes de ver a resolução da aula, tentei aplicar a minha e pensei em fazer da seguinte forma:

tecla.onkeydown = function () {
    tecla.classList.add('ativa');
    tecla.classList.remove('ativa'); 
}

Funcionou normalmente, mas depois de ver como foi feito, separando o onkeyup e onkeydown, fiquei na dúvida se essa forma que fiz era realmente uma boa prática. O que acham?

Obrigada desde já!

2 respostas
solução!

Olá, Luiza!

É ótimo ver que você está explorando diferentes maneiras de resolver o problema proposto no curso! Isso é uma parte importante do aprendizado.

Na abordagem ensinada no curso, separar os eventos onkeydown e onkeyup permite um controle mais refinado sobre o estado visual das teclas. Por exemplo, ao pressionar a tecla, ela recebe a classe ativa (ficando visualmente ativa), e apenas quando a tecla é solta, a classe é removida. Isso simula um efeito de "pressionamento" que é comum em muitas interfaces, dando ao usuário um feedback visual de que a tecla foi realmente pressionada e depois liberada.

No seu código, ao colocar o classList.add('ativa') e classList.remove('ativa') dentro do mesmo evento onkeydown, pode acontecer que a classe seja adicionada e removida muito rapidamente, eu fiz o teste e nesse caso super rolou, mas digamos que conforme o seu código fique mais completo separar assim como na aula seja o ideal.

Reforço que em casos de dúvidas, conte sempre com o fórum da comunidade Alura! Bons estudos!

Sucesso

Um grande abraço e até mais!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!

Perfeito, Victor, entendi a explicação. Muito obrigada!