GithubHelp home page GithubHelp logo

keyboard-events's Introduction

Entrega: Recebendo eventos do teclado

Agora que você já escreveu um número de programas que lidam com eventos de clique, vamos aprender sobre outro tipo de evento: O KeyboardEvent.

Nesta entrega, você criará uma página web simples que move uma caixa em resposta a eventos a teclas pressionadas.

Etapas

Como de costume, crie um novo repositório no gitlab.

Copie o código de exemplo na documentação MDN para eventos de teclado para um novo arquivo index.html.

Tente fazer isso. Você pode desejar modificar o exemplo para mudar o alert() para um console.log().

Pressione as teclas de cursor (setas) no teclado. Quais os nomes de tecla aparecem?

Você também pode verificar a documentação de Valores de Teclas (em inglês) para encontrar os nomes associados às diversas teclas.

Adicione um div com id="box" dentro do elemento body da página, e aplique a seguinte regra CSS:

#box { width: 100px; height: 100px; position: absolute; background: gray; left: 200px; top: 200px; }

Inicialize duas variáveis globais fora do keydown listener:

let boxTop = 200;
let boxLeft = 200;

Modifique o keydown listener de forma que a tecla de nome "ArrowDown" adicione 10 à variável boxTop. Similarmente, faça o "ArrowUp" subtrair 10 da variável boxTop. Adicione a seguinte linha ao final do keydown listener para atualizar o atributo de estilo "top" da caixa:

document.getElementById("box").style.top = boxTop + "px";

Similarmente, adicione um código ao keydown listener de forma que as teclas de cursor para esquerda e para a direita modifiquem o atributo de estilo "left" da caixa.

Agora você deve conseguir mover a caixa pela página usando as teclas de seta.

Por fim, substitua a tediosa caixa cinza por uma imagem.

Envio

Faça o push do código para o seu repositório GitHub e implemente-o GitHub pages. No Canvas, por favor, envie sua url do GitHub Pages: (ex: https://nomedeusuario.github.io/keyboard-events) e envie o link do seu repositório nos comentários. Após ser a correção, seu projeto deverá ficar privado.

keyboard-events's People

Contributors

github-classroom[bot] avatar iankuntz avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.