Respondendo a eventos



Documentos relacionados
JavaScript. Prof. Msc. Juliano Gomes Weber Notas de Aula Aula 12 1º Semestre UNIJUÍ DETEC Ciência da Computação

Aula de JavaScript 05/03/10

Incorporando JavaScript em HTML

Criando um script simples

Testando e Comparando Valores

Aula 12: Funções. Pré-requisitos: Todas as aulas anteriores deste módulo. 1. Aproveitando Códigos no Programa

LGTi Tecnologia. Manual - Outlook Web App. Soluções Inteligentes. Siner Engenharia

UNIVERSIDADE FEDERAL DO AMAPÁ PRÓ REITORIA DE ADMINISTRAÇÃO E PLANEJAMENTO DEPARTAMENTO DE INFORMÁTICA. Manual do Moodle- Sala virtual

Para criar uma nova apresentação: 1.Escolha a opção Apresentação em Branco Clique no botão Ok

Figura 1: tela inicial do BlueControl COMO COLOCAR A SALA DE INFORMÁTICA EM FUNCIONAMENTO?

Manual de utilização do EAD SINPEEM. EaD Sinpeem

Manual de Utilizador. Caderno. Recursos da Unidade Curricular. Gabinete de Ensino à Distância do IPP.

WEBGIS Sistema Informativo Territorial

AJAX JSON JQUERY. Prof. Fellipe Aleixo

Informática básica Telecentro/Infocentro Acessa-SP

Microsoft Office Outlook Web Access ABYARAIMOVEIS.COM.BR

Índice. 5. Editar as seções de um curso 6. Estruturar o curso 7. Publicar o curso 8. Resumo do Fluxo de criação de um curso no educommons

Manual do Instar Mail v2.0

Índice Static Text (texto estático) Dynamic Text (Texto Dinâmico) Input Text Exercício...8

Universidade Federal do Espírito Santo

Aula 2: Listas e Links

Início Rápido para Fotos e Histórias do FamilySearch

Lync Acessando o Lync Web App

Aoentrar na sua cx de vc terá uma tela como a abaixo :

OFICINA DE POWER POINT

Programação para web JavaScript

SAP Guia de signatário da DocuSign

Como fazer a Renovação de Matrícula online no Sistema Acadêmico

Criando uma Agenda de Reuniões

Tecnologias Web. Formulários HTML

USANDO O ROUNDCUBE WEBMAIL

Manual do Sistema "Vida - Controle Financeiro Pessoal" Editorial Brazil Informatica

Banner Flutuante. Dreamweaver

Vamos criar uma nova Página chamada Serviços. Clique em Adicionar Nova.

PROVA INFORMÁTICA BANCO DO BRASIL 2007

MANUAL DE UTILIZAÇÃO DO WEBMAIL SBC

1 ACESSO PARA SECRETÁRIA CONFIGURAR HORÁRIOS DE ATENDIMENTO BLOQUEANDO E HABILITANDO HORÁRIOS PRÉ-DEFININDO PARÂMETROS DE

CADERNOS DE INFORMÁTICA Nº 1. Fundamentos de Informática I - Word Sumário

TRANSIÇÕES, ZOOMS E PANORÂMICAS, TEXTO, MÚSICA

TUTORIAL PMS CARD. Acesse o site:

JavaScript (Funções, Eventos e Manipulação de Formulários)

Etec. Cel. Fernando Febeliano da Costa

O conteúdo deste documento é de propriedade intelectual exclusiva da GVDASA Sistemas e está sujeito a alterações sem aviso prévio.

Formatos de publicidade

Usando o NVU Parte 2: Inserindo imagens

Iesde Brasil S.A. Informática Suporte/Telecom. Manual de Instalação e Utilização do TeamSpeak

Professor Paulo Lorini Najar

Avaya Softconsole Versão 1.5 Referência Rápida

TUTORIAL DO ASSISTENTE VIRTUAL (QUICK START)

ROBERTO OLIVEIRA CUNHA

Manual do Teclado de Satisfação Online WebOpinião

JavaScript: Validação de Formulários. Prof. Ivanilton Polato

FEMA Fundação Educacional Machado de Assis INFORMÁTICA Técnico em Segurança do Trabalho P OW ERPOI NT. Escola Técnica Machado de Assis Imprensa

O Windows também é um programa de computador, mas ele faz parte de um grupo de programas especiais: os Sistemas Operacionais.

BearingNet - Orçamentos Contenuto

Mais configuração OptraImage

Manual do Aluno Moodle

Curso em Sistema de Editoração Eletrônica de Revistas (SEER) - Tutorial Editores/Editores de Seção

Início Rápido para o Templo

Tutorial Moodle ESDM - professores

Solução 1 - Copiar e colar a URL de convite do Ariba na barra de endereços do navegador:

MAPA GEOIDAL DE CAMPINAS

DESENVOLVIMENTO WEB I

Manual do KGeography. Anne-Marie Mahfouf Kushal Das Tradução: Luiz Fernando Ranghetti

Alguns truques do Excel. 1- Títulos com inclinação. 2- Preencha automaticamente células em branco

6.2 - Formulários: form <form action="url_de_script" method="método">...</form> form action method POST GET exceto outros formulários form

Considere um alarme residencial ligado a um CLP compacto com os seguintes I/Os:

Manual do Software Pctel Supervisor Desktop

Sistema Click Principais Comandos

TRABALHANDO COM O ORÇAMENTO NO GERENCIAL

Treinamento em BrOffice.org Writer

Prefeitura Municipal de Sete Lagoas Secretaria de Planejamento Orçamento e Tecnologia Subsecretaria de Tecnologia da Informação

Formador: Carlos Maia

,QWURGXomRDR(GLWRUGH $SUHVHQWDo}HV3RZHU3RLQW

SISTEMA OPERACIONAL - ios

MANUAL DE UTILIZAÇÃO DO AMBIENTE EAD (Educação a Distância) ÍNDICE

agsou Conexão Semear Manual

Manual das funcionalidades Webmail AASP

COORDENAÇÃO DE EAD MANUAL DE UTILIZAÇÃO DO MOODLE 2.6 PERFIL ALUNO. Versão 1.0

Manual do Usuário CMS WordPress Versão atual: 3.0

Tribunal de Justiça do Estado de Mato Grosso Supervisão de Informática Departamento de Desenvolvimento Sistema Declaração On Line. Declaração On Line

Guia de Instalação rápida HD-CVI 7104SF / 7108SF / 7116MF

2015 GVDASA Sistemas Suprimentos 1

DHTML - MÓDULO 1: VISÃO GERAL E INTRODUÇÃO Por Marcelo Camargo Visão geral

Migrando para o Word 2010

Guia do Usuário. idocs Content Server v

PEDIDOS WEB MANUAL DO USUÁRIO

TEKLYNX LABEL MATRIX

MANUAL WEBDRIVE. webdrive.whirlpool.com.br

MANUAL DE UTILIZAÇÃO. Help & Manual Versão Build 2537

Conectar diferentes pesquisas na internet por um menu

Movie Maker. Fazer download de vídeos no You Tube. Para publicar no You Tube. O Windows Movie Maker 2 torna fácil para qualquer pessoa

Manual de Comunidades RIPALC

Windows Live Movie Maker

Para o OpenOffice Impress, assim como para vários softwares de apresentação, uma apresentação é um conjunto de slides.

Transcrição:

Respondendo a eventos Até agora, a maioria dos scripts que você escreveu foi executado de uma forma tranqüila e ordenada, movendo-se da primeira instrução para a última. Agora aprenderemos a utilizar a ampla variedade de handlers de evento suportados pelo JavaScript. Em vez de serem executados na ordem, os scripts que utilizam handlers de evento podem ser executados em qualquer ordem, pois a execução de cada um dependerá do evento que ocorreu naquele momento. Entendendo handlers de evento Os eventos são coisas que acontecem ao navegador o usuário dando um clique em um botão, o ponteiro do mouse movendo-se ou uma página da Web ou imagem se carregando do servidor. Uma ampla variedade de eventos permite que seus scripts respondam ao mouse, ao teclado e a outras circunstâncias. Logo, os programas do JavaScript não têm de executar na ordem, pois eles podem detectar eventos e reagir a eles. Os scripts que você utiliza para detectar e responder a um evento é chamado de handler de evento. Os handlers de evento estão entre os recursos mais poderosos do JavaScript. Objetos e eventos Já vimos antes que o JavaScript utiliza um conjunto de objetos para armazenar as informações sobre as várias partes de uma página da Web botões, links, imagens, janelas e assim por diante. Um evento freqüentemente pode acontecer em mais de um lugar (por exemplo, o usuário pode dar um clique em qualquer um dos links na página). Logo, cada evento é associado a um objeto. Por exemplo: o evento onmouseover ocorre quando o ponteiro de mouse move-se sobre um objeto na página. Quando o ponteiro move-se sobre um link particular, o evento onmouseover é enviado para aquele handler de evento do link, se ele tiver um. Para definir um handler de evento, você adiciona a palavra on no começo do nome do evento. Por exemplo, o handler de evento onmouseover é chamado quando o mouse move-se sobre um link. Para definir o handler de evento, você o adiciona a essa tag HTML <A> do link particular. obs:notação padrão para handlers de evento. O on é sempre escrito em letras minúsculas. E Nemer 1 / 6

Criando um handler de evento Não é necessária a tag <SCRIPT> para definir um handler de evento. Em vez disso, você adiciona um atributo de handler de evento em uma tag individual de HTML. Por exemplo, eis um link que inclui um onmouseover ao handler de evento: <A HREF= http: //www.domain.com.br/ onmouseover= window.alert( Você está se movendo sobre o link. ); clique aqui</a> Note que isso tudo é uma tag <A>, embora esteja dividido em múltiplas linhas. Ela especifica uma instrução a ser utilizada como o handler de evento onmouseover para o link (exibe uma mensagem de alerta quando o mouse move-se sobre o link). Se você precisar de mais de uma instrução, utilize uma função. Defina a função no cabeçalho do documento e então chame a função como o handler de evento, como mostrado abaixo: <A HREF= http: //www.domain.com.br/ onmouseover= Processa( ); > Mova o mouse sobre este link</a> Alterando os handlers de evento com JavaScript Em vez de especificar um handler de evento em um documento de HTML, você pode utilizar JavaScript para designar uma função como um handler de evento. Isso permite configurar handlers de evento condicionalmente e ativa-los e desativa-los, assim como alterar a função que trata um evento dinamicamente. Para definir um handler de evento dessa maneira, primeiro defina uma função e depois a designe como um handler de evento. os handlers de evento são armazenados como propriedades do objeto document ou outro objeto que pode receber um evento. Por exemplo, o script seguinte define uma função chamada mousealert e então a atribui como o handler de evento onmousedown ao documento. function mousealerta( ) { alert("você clicou o mouse!"); document.onclick=mousealerta; E Nemer 2 / 6

Utilizando o objeto event O objeto event é um objeto especial cujas propriedades oferecem a você mais informações sobre o evento que ocorreu. As seguintes propriedades estão disponíveis: type é o tipo de evento que ocorreu (ex: mouseover); target é o objeto de destino para o evento (ex: um documento em um link); button é um valor numérico que especifica o botão do mouse que foi clicado para eventos de mouse ou a tecla foi pressionada para eventos do teclado; modifiers é uma lista de teclas de modificador que foram pressionadas durante um evento de teclado ou de mouse (ex: Alt, Ctrl e Shift); data é uma lista de dados arrastados e soltos para eventos de arrastar e soltar; pagex e pagey são a posição X e Y do mouse quando o evento ocorreu, medida do canto superior esquerdo da página; layerx e layery são a posição X e y do mouse, medida do canto superior esquerdo da camada atual.; e screenx e screeny são a posição X e Y do mouse, medida do canto superior esquerdo da tela. Utilizando eventos de mouse O JavaScript inclui um número de handlers de evento para detectar ações de mouse. Seu script pode detectar o movimento do ponteiro do mouse e quando um botão é clicado, é liberado ou ambos. O evento onmouseout ocorre quando o ponteiro de mouse é movido para fora da borda do objeto. O evento onclick é chamado quando o botão do mouse é clicado enquanto posicionado sobre o objeto apropriado. Por exemplo, você pode utilizar o seguinte handler de evento para exibir um alerta quando um link é clicado: <title> Exemplo de eventos </title> <A HREF="http://www.oglobo.com.br/" onclick="alert ('Você está saindo deste site.');"> Clique aqui</a> E Nemer 3 / 6

No exemplo anterior, o handler de evento onclick executa antes de a página vinculada ser carregada no navegador. Isso é útil para tornar o link condicional ou para exibir uma nota de isenção de responsabilidade antes de carregar a página vinculada. Se o seu handler de evento onclick retorna o valor false, o link não será seguido. Por exemplo, o script seguinte exibe uma caixa de diálogo de confirmação. Se você der um clique em Cancel, o link não é seguido; se der um clique em OK, a nova página é carregada: <title> Exemplo de eventos </title> <A HREF="http://www.oglobo.com.br/" onclick="return(window.confirm('tem certeza?'));"> Clique aqui</a> O exemplo anterior utiliza a instrução return no handler de evento. Isso assegura que o valor false, que é retornado quando o usuário dá um clique em Cancel, é retornado do handler de evento, o que evita que o link seja seguido. O handler de evento ondblclick é semelhante, mas é utilizado somente quando o usuário dá um clique duplo em um objeto. Como os links normalmente exigem somente um único clique, você pode utilizar isso para fazer um link realizar duas coisas diferentes, dependendo do número de cliques. O evento onmousedown é utilizado quando o usuário pressiona o botão do mouse. O evento onmouseup é utilizado quando o usuário solta o botão do mouse. Os dois eventos anteriores são as duas metades de um clique de mouse. Para detectar qual o botão do mouse foi pressionado, você pode utilizar a propriedade button do objeto event. Essa propriedade recebe o valor 1 para o botão esquerdo ou 2 para o botão direito. Essa propriedade é atribuída aos eventos onclick, ondblclick, onmouseup e onmousedown. O exemplo abaixo exibe um alerta com o botão pressionado pelo usuário. E Nemer 4 / 6

<title> Exemplo de eventos - pág. 144</title> <script language="javascript"> function indicabotao( ) { tipodobotao = (event.button == 1)? "esquerdo" : "direito"; mensagem = "Clicou o botão "+ tipodobotao ; alert(mensagem); document.onmousedown = indicabotao; </script> Utilizando eventos de teclado O principal handler de evento para esse propósito é onkeypress, que ocorre quando uma tecla é pressionada e liberada ou é mantida pressionada. O evento onkeydown detecta quando a tecla foi pressionada. O evento onkeyup detecta quando a tecla foi liberada. O exemplo abaixo mostra um script que exibe na tela o código decimal da tecla que foi apertada. <title> Exemplo de eventos - pág. 144</title> <body onkeypress="window.alert('clicou em '+ (event.keycode));" > E Nemer 5 / 6

<title>new Page 1</title> <script language="javascript"> function mostra(text) { window.status=text; return true; function limpastatus( ) { window.status=""; </script> <h1>links descritivos</h1> <p>mova o mouse para ver uma descrição:</p> <ul> <li><a href="formuláriopedido.html" onmouseover="mostra('encomende um produto'); return true;" onmouseout = "limpastatus( ) ;"> Formulário de Pedido</a> <li><a href="email.html" onmouseover="mostra('envie-nos uma mensagem'); return true;" onmouseout = "limpastatus( ) ;"> Email</a> <li><a href="order.html" onmouseover="mostra('tem alguma reclamação?'); return true;" onmouseout = "limpastatus( ) ;"> Reclamações</a> </ul> E Nemer 6 / 6