Programação Orientada A Eventos
Programação Orientada A Eventos
PROGRAMAÇÃO
ORIENTADA A EVENTOS
Aula 1
INTRODUÇÃO A EVENTOS
Introdução a eventos
Estudante, esta videoaula foi preparada especialmente para você. Nela,
você irá aprender conteúdos importantes para a sua formação
profissional. Vamos assisti-la?
Clique aqui para acessar os slides da sua videoaula.
Bons estudos!
https://alexandria-html-published.platosedu.io/40118fd9-9b74-4b80-a9f1-52744cfd8bd4/v1/index.html 1/42
16/04/2025, 21:22 Programação Orientada a Eventos
Ponto de Partida
Iniciamos, agora, a unidade na qual falaremos bastante sobre eventos
na programação web. De maneira bem simples, um evento nada mais é
do que a manifestação de algo que aconteceu. No contexto do
desenvolvimento de aplicações web, é natural utilizarmos os eventos,
pois são eles, de certa forma, que tornam a aplicação interativa, como
uma ação que é disparada com o movimento do mouse.
O desafio para esta aula é utilizar o Javascript para realizar uma ação de
verificar se os campos de uma tela de login (e-mail e senha) estão
preenchidos; se não estiverem, deverá aparecer uma mensagem
informando ao usuário que os campos não estão preenchidos. Trate,
também, o oposto disso.
Bons estudos!
Vamos Começar!
Definindo eventos
https://alexandria-html-published.platosedu.io/40118fd9-9b74-4b80-a9f1-52744cfd8bd4/v1/index.html 2/42
16/04/2025, 21:22 Programação Orientada a Eventos
https://alexandria-html-published.platosedu.io/40118fd9-9b74-4b80-a9f1-52744cfd8bd4/v1/index.html 3/42
16/04/2025, 21:22 Programação Orientada a Eventos
https://alexandria-html-published.platosedu.io/40118fd9-9b74-4b80-a9f1-52744cfd8bd4/v1/index.html 4/42
16/04/2025, 21:22 Programação Orientada a Eventos
Como você pode ver, o Javascript cumpre bem uma das principais
qualidades que o tornam indispensável na programação web: sua
utilização para verificação e validação local dos dados de um formulário,
evitando a realização de requisições desnecessárias ao servidor web e
melhorando drasticamente o desempenho da página (Oliveira, 2020).
Siga em Frente...
Tipos de eventos
https://alexandria-html-published.platosedu.io/40118fd9-9b74-4b80-a9f1-52744cfd8bd4/v1/index.html 5/42
16/04/2025, 21:22 Programação Orientada a Eventos
Eventos de formulário.
Eventos de janela.
Eventos de mouse.
Eventos de teclado.
Vamos Exercitar?
Um dos problemas mais comuns encontrados e resolvidos com a
utilização de eventos diz respeito à validação de campos de formulários.
Esses formulários, por sua vez, podem ser diversos, logo, é muito
importante que você compreenda como utilizar a programação orientada
a eventos para lidar com isso.
https://alexandria-html-published.platosedu.io/40118fd9-9b74-4b80-a9f1-52744cfd8bd4/v1/index.html 6/42
16/04/2025, 21:22 Programação Orientada a Eventos
https://alexandria-html-published.platosedu.io/40118fd9-9b74-4b80-a9f1-52744cfd8bd4/v1/index.html 7/42
16/04/2025, 21:22 Programação Orientada a Eventos
Perceba que essa validação pode ser feita de diversas formas. Vamos,
agora, dar uma olhadinha no resultado, para ver como ficou:
https://alexandria-html-published.platosedu.io/40118fd9-9b74-4b80-a9f1-52744cfd8bd4/v1/index.html 8/42
16/04/2025, 21:22 Programação Orientada a Eventos
Saiba Mais
https://alexandria-html-published.platosedu.io/40118fd9-9b74-4b80-a9f1-52744cfd8bd4/v1/index.html 9/42
16/04/2025, 21:22 Programação Orientada a Eventos
Referências Bibliográficas
FLANAGAN, D. JavaScript: o guia definitivo. Tradução: João Eduardo
Nóbrega Tortello. 6. ed. Porto Alegre: Bookman, 2013.
Aula 2
EVENTOS
Eventos
Estudante, esta videoaula foi preparada especialmente para você. Nela,
você irá aprender conteúdos importantes para a sua formação
profissional. Vamos assisti-la?
https://alexandria-html-published.platosedu.io/40118fd9-9b74-4b80-a9f1-52744cfd8bd4/v1/index.html 10/42
16/04/2025, 21:22 Programação Orientada a Eventos
Ponto de Partida
Olá, estudante, nós daremos continuidade ao estudo de eventos. Como
já vimos, os eventos oportunizam o emprego de recursos de
interatividade, uma vez que permitem o tratamento de qualquer
mudança ou comportamento sofrido no documento web. Por exemplo,
com eles, é possível, dar foco a um determinado campo.
A fim de entender melhor o tópico central desta aula, você criará uma
aplicação para pessoas que estão sendo alfabetizadas, para que,
utilizando a sua aplicação, possam conhecer melhor o alfabeto.
Desenvolva um protótipo com as seis primeiras letras, de A à F. O
funcionamento é simples: a pessoa clicará em uma letra e, um campo
com essa letra receberá foco, para que a pessoa possa redigir uma
palavra que inicie com a letra escolhida. Ao escolher a letra, ela sumirá
da lista de letras disponíveis, evitando confusão no processo de
aprendizagem.
https://alexandria-html-published.platosedu.io/40118fd9-9b74-4b80-a9f1-52744cfd8bd4/v1/index.html 11/42
16/04/2025, 21:22 Programação Orientada a Eventos
Você nunca sabe que resultados virão da sua ação. Mas se você não
fizer nada, não existirão resultados (Mahatma Gandhi).
Bons estudos!
Vamos Começar!
Figura 1 | Exemplo de uso de foco e desfoco em formulário. Fonte: elaborada pelo autor.
Note que o campo nome aparece com foco, quando sofre a ação do
clique do mouse, e isso favorece a compreensão do fluxo a ser seguido
no formulário.
https://alexandria-html-published.platosedu.io/40118fd9-9b74-4b80-a9f1-52744cfd8bd4/v1/index.html 12/42
16/04/2025, 21:22 Programação Orientada a Eventos
Siga em Frente...
Evento Utilidade
gesturestart É disparado quando um gesto começa.
gestureend É disparado quando o gesto termina.
gesturechange Usado para monitorar o progresso do gesto.
touchstart Disparado quando o dedo toca na tela.
touchmove Disparado quando o dedo se move.
touchend Disparado quando o dedo é tirado da tela.
https://alexandria-html-published.platosedu.io/40118fd9-9b74-4b80-a9f1-52744cfd8bd4/v1/index.html 13/42
16/04/2025, 21:22 Programação Orientada a Eventos
Vamos Exercitar?
Ao longo da aula, nós compreendemos um pouco mais os eventos, seus
tipos, aplicação e conhecemos detalhes importantes que farão toda a
diferença em nossa prática enquanto pessoas responsáveis pela criação
de soluções em aplicativos web.
https://alexandria-html-published.platosedu.io/40118fd9-9b74-4b80-a9f1-52744cfd8bd4/v1/index.html 14/42
16/04/2025, 21:22 Programação Orientada a Eventos
O campo fica com foco e muda de cor para que a pessoa que utilizar a
aplicação saiba qual letra escolheu e onde digitar a palavra que se inicia
com aquela letra, como mencionado no escopo da proposta. Agora,
vamos ver o código para a criação dessa aplicação:
https://alexandria-html-published.platosedu.io/40118fd9-9b74-4b80-a9f1-52744cfd8bd4/v1/index.html 15/42
16/04/2025, 21:22 Programação Orientada a Eventos
Note que na linha 8 foi inserido o caminho CDN para o uso do Bootstrap.
Na parte de cima da página, construímos os títulos e campos em que o
usuário deverá digitar alguma palavra que comece com a letra
escolhida; abaixo, aparecerá uma tabela para que o usuário possa clicar
e escolher a letra que desejar. Foi utilizado, também, um CSS simples
no elemento h, para colocar cor de fundo nos elementos label utilizados
no projeto. Veja:
https://alexandria-html-published.platosedu.io/40118fd9-9b74-4b80-a9f1-52744cfd8bd4/v1/index.html 16/42
16/04/2025, 21:22 Programação Orientada a Eventos
Saiba Mais
Sugerimos o capítulo sobre Projeto de interface com o usuário, do livro
Interface humano-computador.
Referências Bibliográficas
BARRETO, J. dos S. et al. Interface humano-computador. Porto
Alegre: SAGAH, 2018.
Aula 3
https://alexandria-html-published.platosedu.io/40118fd9-9b74-4b80-a9f1-52744cfd8bd4/v1/index.html 18/42
16/04/2025, 21:22 Programação Orientada a Eventos
Ponto de Partida
Olá, estudante!
Bons estudos!
https://alexandria-html-published.platosedu.io/40118fd9-9b74-4b80-a9f1-52744cfd8bd4/v1/index.html 19/42
16/04/2025, 21:22 Programação Orientada a Eventos
Vamos Começar!
Eventos de formulário
Siga em Frente...
https://alexandria-html-published.platosedu.io/40118fd9-9b74-4b80-a9f1-52744cfd8bd4/v1/index.html 20/42
16/04/2025, 21:22 Programação Orientada a Eventos
https://alexandria-html-published.platosedu.io/40118fd9-9b74-4b80-a9f1-52744cfd8bd4/v1/index.html 21/42
16/04/2025, 21:22 Programação Orientada a Eventos
Eventos mobile
Você deve ter percebido quão ricas são as opções que nós, pessoas
que escrevem códigos de programa, temos ao nosso dispor. Por esse
motivo, é muito importante conhecer minimamente essas opções,
estudá-las e aplicá-las, para saber, num momento de criação de uma
solução web, que essas opções podem ser utilizadas. Por isso, leia todo
o material recomendado, pois só assim você enriquecerá o seu
vocabulário de programação.
Vamos Exercitar?
Como vimos no início da aula, o desafio é criar um protótipo de
aplicação que obtenha, da área de navegação de um browser, a posição
em que o mouse se encontra. Note que não é importante implementar
algo complexo; esse trabalho será a base para o desenvolvimento de
aplicações cujo propósito será disponibilizar ferramentas de
acessibilidade e inclusão de pessoas com baixa ou nenhuma visão.
https://alexandria-html-published.platosedu.io/40118fd9-9b74-4b80-a9f1-52744cfd8bd4/v1/index.html 22/42
16/04/2025, 21:22 Programação Orientada a Eventos
Vamos iniciar o código construindo uma página html que contenha uma
div que guardará as posições X e Y da tela, por onde o ponteiro do
mouse transitará. O código HTML ficará da seguinte maneira:
https://alexandria-html-published.platosedu.io/40118fd9-9b74-4b80-a9f1-52744cfd8bd4/v1/index.html 23/42
16/04/2025, 21:22 Programação Orientada a Eventos
https://alexandria-html-published.platosedu.io/40118fd9-9b74-4b80-a9f1-52744cfd8bd4/v1/index.html 24/42
16/04/2025, 21:22 Programação Orientada a Eventos
Saiba Mais
Sugerimos a leitura do Capítulo 5 – Comportamento com JavaScript, do
livro Desenvolvimento de software II: introdução ao desenvolvimento
web com HTML, CSS, javascript e PHP.
Referências Bibliográficas
FLANAGAN, D. JavaScript: o guia definitivo. Tradução: João Eduardo
Nóbrega Tortello. 6. ed. Porto Alegre: Bookman, 2013.
Aula 4
EVENTOS EM NÍVEL DE
PÁGINA
https://alexandria-html-published.platosedu.io/40118fd9-9b74-4b80-a9f1-52744cfd8bd4/v1/index.html 26/42
16/04/2025, 21:22 Programação Orientada a Eventos
Ponto de Partida
Olá, estudante! Nesta aula, falaremos um pouco da importância das
técnicas e métodos que possibilitam a organização do processo de
desenvolvimento de uma aplicação web. Pensar na fase do projeto do
software é fundamental para assegurar a qualidade do produto que está
em desenvolvimento, e conhecer brevemente algumas metodologias
oportunizará um aprofundamento desse conhecimento. Você verá que é
indispensável discutir esse tema, mesmo que repetidas vezes, pois é
algo que nunca se dissipa; há sempre algo novo a se pensar, e a prática
na utilização de técnicas de gestão de projetos favorece a qualidade, a
redução de custo e o cumprimento de prazos.
https://alexandria-html-published.platosedu.io/40118fd9-9b74-4b80-a9f1-52744cfd8bd4/v1/index.html 27/42
16/04/2025, 21:22 Programação Orientada a Eventos
Bons estudos!
Vamos Começar!
Criando um projeto
Ao longo de tudo que já foi visto sobre Javascript, você deve ter
percebido a importância de se ter métodos e processos bem definidos
para trabalhar no campo da programação. A utilização de estratégias,
técnicas e ferramentas no desenvolvimento de aplicações é crucial e
determinante para que você consiga trabalhar num determinado
intervalo de tempo e entregar o que se espera do seu esforço. Por esse
motivo, vamos falar um pouco sobre projetos.
Eventos CSS
https://alexandria-html-published.platosedu.io/40118fd9-9b74-4b80-a9f1-52744cfd8bd4/v1/index.html 28/42
16/04/2025, 21:22 Programação Orientada a Eventos
Evento Descrição
animationstart Acionado quando uma animação CSS é iniciada.
Disparado quando uma iteração de animação CSS termina e outra
animationiteration
se inicia.
animationend Acionado quando uma animação CSS é concluída.
animationcancel Acionado quando uma animação CSS é abortada inesperadamente.
Para que entenda melhor o uso desse tipo de recurso, vamos melhorar
nosso projeto de tela de login, aquele que criamos em aulas anteriores.
Agora, vamos utilizar uma regra CSS chamada @keyframes, que serve
para controlar etapas intermediárias em uma sequência de animação
CSS, em que é empregado o estilo por quadros-chave. Veja:
https://alexandria-html-published.platosedu.io/40118fd9-9b74-4b80-a9f1-52744cfd8bd4/v1/index.html 29/42
16/04/2025, 21:22 Programação Orientada a Eventos
Siga em Frente...
Eventos HTML5
https://alexandria-html-published.platosedu.io/40118fd9-9b74-4b80-a9f1-52744cfd8bd4/v1/index.html 30/42
16/04/2025, 21:22 Programação Orientada a Eventos
Vamos Exercitar?
Nós já havíamos construído um formulário de login em aulas anteriores,
por isso, aproveitaremos o código já elaborado para conduzir os estudos
propostos para esta aula. Aliás, vamos aproveitar a animação que já
fizemos nesta aula e apenas complementá-la. A intenção, agora, é
aplicar outro efeito de animação com CSS ao formulário do login,
fazendo com que esse formulário suba na página, saindo dela,
causando a impressão de que estamos entrando em outra área.
https://alexandria-html-published.platosedu.io/40118fd9-9b74-4b80-a9f1-52744cfd8bd4/v1/index.html 31/42
16/04/2025, 21:22 Programação Orientada a Eventos
Agora, nosso código CSS não sofrerá alterações; aliás, nele, haverá
novos códigos. Vamos construir as animações, lembrando que
revisitaremos animações que já fizemos anteriormente. O código
(somente a parte das animações) ficará da seguinte forma:
https://alexandria-html-published.platosedu.io/40118fd9-9b74-4b80-a9f1-52744cfd8bd4/v1/index.html 32/42
16/04/2025, 21:22 Programação Orientada a Eventos
https://alexandria-html-published.platosedu.io/40118fd9-9b74-4b80-a9f1-52744cfd8bd4/v1/index.html 33/42
16/04/2025, 21:22 Programação Orientada a Eventos
Saiba Mais
Sugerimos a leitura do Capítulo 3, do livro Projetos de Sistemas Web
Conceitos, Estruturas, Criação de Banco de dados e Ferramentas de
Desenvolvimento, que trata de Gestão de projetos.
Referências Bibliográficas
ALVES, W. P. Projetos de sistemas web conceitos, estruturas,
criação de banco de dados e ferramentas de desenvolvimento. 1.
ed. São Paulo: Érica, 2015.
https://alexandria-html-published.platosedu.io/40118fd9-9b74-4b80-a9f1-52744cfd8bd4/v1/index.html 34/42
16/04/2025, 21:22 Programação Orientada a Eventos
Encerramento da Unidade
PROGRAMAÇÃO ORIENTADA
A EVENTOS
Videoaula de Encerramento
Estudante, esta videoaula foi preparada especialmente para você. Nela,
você irá aprender conteúdos importantes para a sua formação
profissional. Vamos assisti-la?
Clique aqui para acessar os slides da sua videoaula.
Bons estudos!
https://alexandria-html-published.platosedu.io/40118fd9-9b74-4b80-a9f1-52744cfd8bd4/v1/index.html 35/42
16/04/2025, 21:22 Programação Orientada a Eventos
Ponto de Chegada
Olá, estudante, chegamos a mais um final! E que final, não é mesmo? A
competência de implementar eventos com a linguagem Javascript
pressupõe conhecer os eventos e suas finalidades. A implementação de
eventos com essa linguagem é uma forma de melhorar o
desenvolvimento de aplicações web, uma vez que esse caminho
possibilita tornar páginas dinâmicas e interativas. Com a utilização de
eventos, essa interação melhora drasticamente o que afeta diretamente
a experiência do usuário.
É Hora de Praticar!
A programação orientada a eventos é uma prática que favorece muito o
desenvolvimento de aplicações para web (Flanagan, 2013), e para que
você fixe definitivamente esse conceito, criaremos um pequeno
https://alexandria-html-published.platosedu.io/40118fd9-9b74-4b80-a9f1-52744cfd8bd4/v1/index.html 36/42
16/04/2025, 21:22 Programação Orientada a Eventos
formulário e aplicaremos sobre ele uma forma de, por meio de eventos,
realizar a sua validação. A intenção é mostrar ao usuário que os campos
do formulário devem ser preenchidos para, então, poder avançar nas
telas.
Reflita
https://alexandria-html-published.platosedu.io/40118fd9-9b74-4b80-a9f1-52744cfd8bd4/v1/index.html 37/42
16/04/2025, 21:22 Programação Orientada a Eventos
https://alexandria-html-published.platosedu.io/40118fd9-9b74-4b80-a9f1-52744cfd8bd4/v1/index.html 38/42
16/04/2025, 21:22 Programação Orientada a Eventos
https://alexandria-html-published.platosedu.io/40118fd9-9b74-4b80-a9f1-52744cfd8bd4/v1/index.html 39/42
16/04/2025, 21:22 Programação Orientada a Eventos
Dê o play!
https://alexandria-html-published.platosedu.io/40118fd9-9b74-4b80-a9f1-52744cfd8bd4/v1/index.html 40/42
16/04/2025, 21:22 Programação Orientada a Eventos
Assimile
Referências
https://alexandria-html-published.platosedu.io/40118fd9-9b74-4b80-a9f1-52744cfd8bd4/v1/index.html 41/42
16/04/2025, 21:22 Programação Orientada a Eventos
https://alexandria-html-published.platosedu.io/40118fd9-9b74-4b80-a9f1-52744cfd8bd4/v1/index.html 42/42