UENF Curso de Javascript Prof. Sérgio Rodrigues Pg 1 ÍNDICE



Documentos relacionados
1-03/11/03 INTRODUÇÃO

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

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

APOSTILA DE JAVA SCRIPT

TECNOLOGIAS WEB. Unidade 2 Introdução a Construção de Páginas Estáticas. Luiz Leão luizleao@gmail.com

Aula de JavaScript 05/03/10

Incorporando JavaScript em HTML

Introdução a Javascript

Programação WEB II. Formulários Em PHP. Métodos GET e POST progweb2@thiagomiranda.net. Thiago Miranda dos Santos Souza

HTML Básico Formulários. Matheus Meira

JavaScript Eventos e Objetos Nativos

Respondendo a eventos

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

JavaScript (ou JScript)

WEBDESIGN. Professor: Paulo Marcos Trentin - paulo@paulotrentin.com.br Escola CDI de Videira

Lista de operadores de comparação - > Maior que - < Menor que - <= Menor ou igual a - >= Maior ou igual a - === Igual a -!

4. A Linguagem JavaScript

Programação para web JavaScript

Inserindo e Listando registros

PROF. DANIELA PIRES. Aplicações para Web. Aplicações para Web - FMU Prof. Daniela Pires

Tecnologias para Web Design

O código JavaScript deve ser colocado entre tags de comentário para ficar escondido no caso de navegadores antigos que não reconhecem a linguagem.

INTRODUÇÃO À LINGUAGEM C++

DESENVOLVIMENTO WEB I

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

Tecnologias Web. Formulários HTML

Informática de Gestão 1º ano / 1º semestre Ano letivo: 2014/2015. Visual Basic VBA

Prof Evandro Manara Miletto. parte 2

LINGUAGEM DE PROGRAMAÇÃO WEB

- Aulas 57, 58, 59 e 60 - Técnicas de programação. Funções

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

Linguagem de. Aula 06. Profa Cristiane Koehler

Enviado dados para o PHP através de formulário

O que é o Javascript?

Conteúdo. DHTML tópicos Hamilton Lima

Iniciando PHP. Agenda

Criando um script simples

MANUAL DA SECRETARIA

Portal do Projeto Tempo de Ser

Bem vindo Joe Ramone!

Aula 2: Listas e Links

Testando e Comparando Valores

PÓS-GRADUAÇÃO EM MATEMÁTICA COMPUTACIONAL INFORMÁTICA INSTRUMENTAL Aula 06: Introdução Linguagem HTML

PROGRAMAÇÃO ORIENTADA A OBJETO EM PHP

Sumário. 1. Propósito 1 2. Tabela de Ferragem 1 3. Criar Tabela de Ferragem 1 4. Conector de Ferragens 7

Introdução ao Javascript

Apostila sobre Java Script

Desenvolvimento em Ambiente Web. HTML - Introdução

Linguagem de Programação I

Algoritmos em Javascript

Introdução. Introdução a HTML. A Linguagem HTML. Estrutura de uma Página. Mário Antonio Meireles Teixeira

Carregando dados do Banco de Dados MySQL através de uma tag SELECT

Universidade Federal do Espírito Santo CCA UFES. Centro de Ciências Agrárias CCA UFES Departamento de Computação. JavaScript

Aplicação para Web I. Começando a compreender o HTML

AJAX JSON JQUERY. Prof. Fellipe Aleixo

Tecnologias para apresentação de dados - Java Script. Aécio Costa

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

Introdução ao HTML Utilizando frames Hospedando seu site na WEB

Introdução. HyperText Markup Language HTML. Formulário. Fluxo do Formulário. Fluxo do Formulário. Fluxo do Formulário. Fluxo do Formulário

Acessando o SVN. Soluções em Vendas Ninfa 2

Aula 1 - Programação III Programação Visual (Visual Basic)

Sumário. 1. Instalando a Chave de Proteção Novas características da versão Instalando o PhotoFacil Álbum 4

Atividade JSP com Banco de Dados

Delphi 7 Aula 02 Preço do Automóvel

HTML. Sessão 8 HTML. Criação de Páginas WEB. Formulários

Tecnologia WEB II. Prof. Erwin Alexander Uhlmann. Introdução ao PHP. UHLMANN, Erwin Alexander. Introdução ao PHP. Instituto Siegen. Guarulhos, 2012.

HTML: Formulários Programação de Servidores

Programação WEB II. Conhecendo o PHP. Prof: Kelly E. Medeiros Bacharel em Sistema de Informação. Módulo III

Prova de pré-requisito

Comandos de repetição while

Personal Home Page PHP. Prof. Luiz Claudio F. de Souza

Vejamos um exemplo. Vamos supor que queiramos montar uma tabela 3X2, ou seja de 3 colunas por 2 linhas, o código HTML para isso é :

Programação para Internet I

Para o envio de s pelo PHP é necessário seguir a seguinte sintaxe:

Instalação/ Operacionalização

Calculador de preços e prazos de encomendas

Neste tópico, você aprenderá a criar facilmente um banco de dados para uma nova empresa e a definir configurações comuns de uma empresa no SAP

Introdução ao OpenOffice.org Calc 2.0

1) Ao ser executado o código abaixo, em PHP, qual será o resultado impresso em tela?

Utilizando Janelas e Frames

DESENVOLVIMENTO DE SOFTWARE

Panorâmica geral sobre PHP. PHP é uma linguagem que permite fazer. um ficheiro em PHP contem código PHP misturado com HTML.

Bem-vindo ao tópico sobre consultas no SAP Business One.

Informática I. Aula 6. Aula 6-12/09/2007 1

CONCEITOS BÁSICOS PARA A CONSTRUÇÃO DE ALGORITMOS PARA COMPUTADORES. Isac Aguiar isacaguiar.com.br isacaguiar@gmail.com

OPL9815 Inventário Configurável

Quem sou eu? Ana Paula Alves de Lima. Formação:

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

Laboratório de Banco de Dados II Aula 1. Stored Procedures

ROBERTO OLIVEIRA CUNHA

6. Enumere de acordo com a primeira: A. Minimizar diminui o aplicativo, deixando-o na Barra de Tarefas.

INTRODUÇÃO AO DESENVOLVIMENTO WEB

Conectar diferentes pesquisas na internet por um menu

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

Transcrição:

UENF Curso de Javascript Prof. Sérgio Rodrigues Pg 1 ÍNDICE Javascript - Módulo I 02 Introdução 02 Escrevendo no documento 02 Criando variáveis 03 Mensagens 04 Alerta 04 Confirmação 04 Receptor 05 Operadores lógicos 05 Operadores matemáticos 05 Controles especiais 06 Comandos condicionais 07 Comando if 07 Comando for 08 Comando while 08 Move condicional 09 Javascript - Módulo II 10 Eventos 10 Criando funções 11 Funções intrínsecas 12 Criando um menu completo 13 Interagindo com o usuário 16 Focando um Objeto 16 Validando um Formulário 17 Calculando o preço de um computador 18 Criando novas instâncias 20 Manipulando Arrays 20 Manipulando Datas 21 Manipulando String s 23 Exibindo Informações do Navegador 24 Alterando a linha de Status 24 Animando páginas com settimeout 25 Rolando mensagens na linha de status 25 Criando um Texto Animado 26 Texto Animado com várias Camadas 28

UENF Curso de Javascript Prof. Sérgio Rodrigues Pg 2 Introdução Javascript Módulo I Javascript é uma linguagem que permite injetar lógica em páginas escritas em HTML (HiperText Markup Language). As páginas HTML podem ser escritas utilizando-se editores de texto, como o NotePad, Write, etc. O código Javascript fica junto ao de HTML e, portanto, não é necessário o uso de editores diferentes. Os parágrafos de lógica do Javascript podem estar "soltos" ou atrelados a ocorrência de eventos. Os parágrafos soltos são executados na seqüência em que aparecem na página (documento) e os atrelados a eventos são executados apenas quando o evento ocorre. Para inserir parágrafos de programação dentro do HTML é necessário identificar o início e o fim do set de Javascript, da seguinte forma:... <SCRIPT> Set de instruções </SCRIPT>... Este procedimento pode ser adotado em qualquer local da página. Entretanto, para melhor visualização e facilidade de manutenção, recomenda-se que toda a lógica seja escrita no início do documento, através da criação de funções a serem invocadas quando se fizer necessário (normalmente atreladas a eventos). Se a lógica é escrita a partir de um determinado evento, não é necessário o uso dos comandos <SCRIPT> e </SCRIPT>. Os comandos Javascript são sensíveis ao tipo de letra (maiúsculas e minúsculas) em sua sintaxe. Portanto, é necessário que seja obedecida a forma de escrever os comandos, de acordo com a forma apresentada. Caso seja cometido algum erro de sintaxe na escrita de um comando, o Javascript interpretará, o que seria um comando, como sendo o nome de uma variável. Escrevendo no Documento O Javascript permite que o programador escreva linhas dentro de uma página (documento), através do método write. As linhas escritas desta forma, podem conter textos, expressões Javascript e comandos Html. As linhas escritas através deste método aparecerão no ponto da tela onde o comando for inserido.

UENF Curso de Javascript Prof. Sérgio Rodrigues Pg 3 Exemplo 21 Escrevendo no documento <title>exemplo 21</title> <h1>primeiro exemplo</h1> <br> <script language="javascript"> document.write("meu primeiro script!!!"); Criando Variáveis Algumas linguagens de programação exigem que você declare uma variável antes de utilizá-la. O Javascript inclui a palavra-chave var, que pode ser utilizada para declarar uma variável. Você pode omitir var em muitos casos, fazendo com que a variável seja criada automaticamente, pela simples associação de valores a mesma. Exemplo: novavariavel = "Jose"; var valor = 5; As variáveis podem ser Locais ou Globais. As variáveis que são criadas dentro de uma função são Locais e referenciáveis apenas dentro da função. As variáveis criadas fora de funções são Globais, podendo serem referenciadas em qualquer parte do documento. Desta forma, variáveis que precisam ser referenciadas por várias funções ou em outra parte do documento, precisam ser definidas como globais. Exemplo 22 Criando uma variavel <title>exemplo 22</title> <br> <script language="javascript"> valorinicial = 5; document.write("<b>valor Inicial</b> = " + valorinicial); document.write("<br>");

UENF Curso de Javascript Prof. Sérgio Rodrigues Pg 4 document.write("<b>valor Final</b> = " + (valorinicial+15)); Mensagens Existem três formas de comunicação com o usuário através de mensagens. 1 Apenas Observação. alert ( mensagem ) Exemplo 23 Mensagens - alert <title>exemplo 23</title> alert("texto de Alerta!"); Testando mensagem de alerta! 2 Mensagem que retorna confirmação de OK ou CANCELAR confirm (mensagem) Exemplo 24 Mensagens - confirm <title>exemplo 24</title> var resposta = confirm("confirma Dados?"); document.write("a resposta dada foi <b>" + resposta + "</b>");

UENF Curso de Javascript Prof. Sérgio Rodrigues Pg 5 3 Recebe mensagem via caixa de texto Input Receptor = prompt ("Mensagem", "Texto") Onde: Receptor é o campo que vai receber a informação digitada pelo usuário. Mensagem é a mensagem que vai aparecer como Label da caixa de input Texto é um texto, opcional, que aparecerá na linha de digitação do usuário Exemplo 25 Mensagens - prompt <title>exemplo 25</title> senha = prompt("digite a senha desta página:",""); document.write("a senha dada foi <b>" + senha + "</b>"); Operadores Lógicos São operadores a serem utilizados em comandos condicionais, tais como: if, for e while. Os comandos condicionais serão vistos mais a frente. == Igual!= Diferente > Maior >= Maior ou Igual < Menor <= Menor ou Igual && E Ou Operadores Matemáticos São operadores a serem utilizados em cálculos, referências de indexadores e manuseio de strings. Ao longo desta apostila estes operadores serão largamente utilizados, dando, assim, uma noção mais precisa do seu potencial.

UENF Curso de Javascript Prof. Sérgio Rodrigues Pg 6 + adição de valor e concatenação de strings - subtração de valores * multiplicação de valores / divisão de valores % obtém o resto de uma divisão: Ex: 150 % 15 retornará 0 7 % 3 retornará 1 += concatena /adiciona ao string/valor já existente. Ex: x += y é o mesmo que x = x + y, da mesma forma podem ser utilizados: -=, *=, /= ou %= Um contador pode ser simplificado utilizando-se : X++ ou X-- o que equivale as expressões: X = X + 1 ou X = X - 1 respectivamente. Para inverter sinal: X = -X negativo para positivo ou positivo para negativo. Exemplo 26 Operadores matematicos <title>exemplo 26</title> var valor1 = 5; var valor2 = valor1 + 5; var valor3 = valor2 / 2; var valor4 = valor2 % 2; valor3--; valor4+=2; var valor5 = valor3 * valor4; document.write("valor 1 = " + valor1 + "<br>"); document.write("valor 2 = " + valor2 + "<br>"); document.write("valor 3 = " + valor3 + "<br>"); document.write("valor 4 = " + valor4 + "<br>"); document.write("valor 5 = " + valor5 + "<br>"); Controles Especiais \n nova linha \t tabulação // Linha de comentário

UENF Curso de Javascript Prof. Sérgio Rodrigues Pg 7 /*...*/ Delimitadores para inserir um texto com mais de uma linha como comentário. Os delimitadores naturais para uma string são " ou '. Caso seja necessário a utilização destes caracteres como parte da string, utilize \ precedendo " ou '. Exemplo 27 Controles especiais <title>exemplo 27</title> <h1> Confira os textos abaixo:</h1> document.write("cuidado com o uso de \" ou \' em uma string"); /* Este texto nao ira aparecer na pagina */ alert("texto 1\nTexto2\tTexto3"); // comentario... Comandos Condicionais São comandos que condicionam a execução de uma certa tarefa à veracidade ou não de uma determinada condição, ou enquanto determinada condição for verdadeira. São eles: Comando if if (condição) ação para condição satisfeita else ação para condição não satisfeita Exemplo 28 Comando if

UENF Curso de Javascript Prof. Sérgio Rodrigues Pg 8 <title>exemplo 28</title> senha = prompt("digite a senha desta página:",""); if (senha == "12345") msg = "Senha Correta!"; else msg = "Senha Incorreta!"; document.write("<b>" + msg + "</b>"); Comando for for (inicialização de variável de controle ; condição ; incremento da variável de controle) ação Exemplo 29 Comando for <title>exemplo 29</title> <h1>confira os Resultados abaixo</h1> for (x = 0 ; x <= 5 ; x++) document.write("valor Atual = <b>" + x + "</b><br>"); Comando while Executa uma ação enquanto determinada condição for verdadeira. while (condição)

UENF Curso de Javascript Prof. Sérgio Rodrigues Pg 9 ação Exemplo 30 Comando while <title>exemplo 30</title> <h1>confira os Resultados abaixo</h1> var x = 0; while (x <= 5) document.write("valor Atual = <b>" + x + "</b><br>"); x++; Move condicional variavel = (condição)? verdadeiro : falso Exemplo 31 Move condicional <title>exemplo 31</title> senha = prompt("digite a senha desta página:",""); msg = (senha=="12345")? "Senha Correta!" : "Senha Incorreta!"; document.write("<b>" + msg + "</b>");

UENF Curso de Javascript Prof. Sérgio Rodrigues Pg 10 Eventos Javascript Módulo II São fatos que ocorrem durante a execução do sistema, a partir dos quais o programador pode definir ações a serem realizadas pelo programa. Abaixo apresentamos a lista dos eventos possíveis, indicando os momentos em que os mesmos podem ocorrer, bem como, os objetos passíveis de sua ocorrência. onload - Ocorre na carga do documento. onunload - Ocorre na descarga (saída) do documento. onchange - Ocorre quando o objeto perde o focus e houve mudança de conteúdo. onblur - Ocorre quando o objeto perde o focus, independente de ter havido mudança. onfocus - Ocorre quando o objeto recebe o focus. onclick - Ocorre quando o objeto recebe um Click do Mouse. onmouseover - Ocorre quando o ponteiro do mouse passa por sobre o objeto. onselect - Ocorre quando o objeto é selecionado. onsubmit - Ocorre quando um botão tipo Submit recebe um click do mouse. Exemplo 32 Eventos I <title>exemplo 32</title> <body onload="alert('seja Bem-vindo!');" onunload="alert('obrigado pela visita!');"> Bla! Bla! Bla!... Exemplo 33 Eventos II

UENF Curso de Javascript Prof. Sérgio Rodrigues Pg 11 <title>exemplo 33</title> <form> <input type="button" value="teste 1" onclick="alert('evento onclick');"> <p> <input type="button" value="teste 2" onmouseover="alert('evento onmouseover');"> <p> </form> Criando Funções Uma função é composta por um conjunto de instruções, que só devem ser executadas quando a função for acionada. A sintaxe geral é a seguinte: function NomeFuncao (Parâmetros) Conjunto de ações... Exemplo 34 Funcoes I <title>exemplo 34</title> <script language="javascript"> function entrou() alert("seja Bem-vindo!"); function saiu() alert("obrigado pela visita!"); <body onload="entrou();" onunload="saiu();"> Texto...

UENF Curso de Javascript Prof. Sérgio Rodrigues Pg 12 Funções Intrínsecas São funções embutidas na própria linguagem. A sintaxe geral é a seguinte: Result = função (informação a ser processada) eval Calcula o conteúdo da string parseint Retorna a parte inteira de uma string parsefloat - Transforma string em número com ponto flutuante date() - Retorna a data e a hora Exemplo 1: Result = eval ( " (10 * 20) + 2-8") Exemplo 2: Result = eval (string) No primeiro exemplo Result seria igual a 194. No segundo, depende do conteúdo da string, que também pode ser o conteúdo (value) de uma caixa de texto. Exemplo 35 Funcoes II <title>exemplo 35</title> function mostra() document.all.camada1.style.display = "block"; function esconde() document.all.camada1.style.display = "none"; <div id="camada1" style="position:absolute; left:60; top:50; background-color:yellow; display:block;"> Camada 1 <form> <input type="button" value="mostrar" onclick="mostra();"> <input type="button" value="esconder" onclick="esconde();">

UENF Curso de Javascript Prof. Sérgio Rodrigues Pg 13 </form> Exemplo 36 Funcoes III <title>exemplo 36</title> function mostra(opcao) eval("document.all."+opcao+".style.display = 'block'"); function esconde(opcao) eval("document.all."+opcao+".style.display = 'none'"); <div id="camada1" style="position:absolute; left:60; top:50; background-color:yellow; display:block;"> Camada 1 <div id="camada2" style="position:absolute; left:240; top:50; background-color:yellow; display:block;"> Camada 2 <form> <input type="button" value="mostrar1" onclick="mostra('camada1');"> <input type="button" value="esconder1" onclick="esconde('camada1');"> <input type="button" value="mostrar2" onclick="mostra('camada2');"> <input type="button" value="esconder2" onclick="esconde('camada2');"> </form> Criando um menu completo Agora já sabemos o suficiente para criarmos um Menu completo, abrangendo folhas de estilo e os eventos abordados anteriormente.

UENF Curso de Javascript Prof. Sérgio Rodrigues Pg 14 Veja o código abaixo: Exemplo 37 Menu Criando um menu completo <title>exemplo 20</title> <style> a font-family:verdana, arial; font-size:12px; color:#006000; font-weight:bold; text-decoration:none; height:20px; a:hover font-family:verdana, arial; font-size:12px; color:#006000; font-weight:bold; text-decoration:underline; height:20px; </style> function mostramenu(menu) esconde(); eval("document.all."+menu+".style.display = 'block'"); function esconde() for(i=1;i<=3;i++) eval("document.all.opcao"+i+".style.display = 'none';"); <div id="op0" style="position:absolute; width:'100%'; top:10; background-color:'#008000'; color:'white'"> <div id="op1" style="position:absolute; left:50; top:10;

UENF Curso de Javascript Prof. Sérgio Rodrigues Pg 15 background-color:'#008000'; color:'white'" onmouseover="mostramenu('opcao1');"> <font face="verdana, arial"><b> Menu 1 </font> <div id="op2" style="position:absolute; left:200; top:10; background-color:'#008000'; color:'white'" onmouseover="mostramenu('opcao2');"> <font face="verdana, arial"><b> Menu 2 </font> <div id="op3" style="position:absolute; left:350; top:10; background-color:'#008000'; color:'white'" onmouseover="mostramenu('opcao3');"> <font face="verdana, arial"><b> Menu 3 </font> <div id="op0" style="position:absolute; width:'100%'; top:30; height:100; background-color:'#fffff0'; color:'white'" onmouseover="esconde();"> <div id="opcao1" style="position:absolute; left:50; top:30; background-color:'#ffffdd'; display:none;"> <a href="exemplo1.htm">exemplo 1</a><br> <a href="exemplo2.htm">exemplo 2</a><br> <a href="exemplo3.htm">exemplo 3</a><br> <div id="opcao2" style="position:absolute; left:200; top:30; background-color:'#ffffdd'; display:none;"> <a href="exemplo4.htm">exemplo 4</a><br> <a href="exemplo5.htm">exemplo 5</a><br> <a href="exemplo6.htm">exemplo 6</a><br> <div id="opcao3" style="position:absolute; left:350; top:30; background-color:'#ffffdd'; display:none;"> <a href="exemplo7.htm">exemplo 7</a><br> <a href="exemplo8.htm">exemplo 8</a><br> <a href="exemplo9.htm">exemplo 9</a><br>

UENF Curso de Javascript Prof. Sérgio Rodrigues Pg 16 Interagindo com o Usuário A interação com o usuário se dá através de objetos para entrada de dados (textos), marcação de opções (radio, checkbox e combo), botões e link's para outras páginas. Conceitualmente, os objetos são divididos em: Input, Textarea e Select, sendo que o objeto Input divide-se (propriedade Type) em: Password, Text, Hidden, Checkbox, Radio, Button, Reset e Submit. A construção destes objetos é feita pela linguagem HTML, mas eles também podem ser manipulados pelo Javascript. Abaixo estão relacionadas algumas formas de utilização do Javascript em Formulários. Focando um Objeto Este método permite que o cursor seja ativado em um determinado objeto (focado). Isso pode ser feito na carga do documento, a partir da ocorrência de um evento ou mesmo dentro de uma função. Observe que até agora o usuário tinha que dar um "Click" para focar o objeto desejado. De forma semelhante existe o método "Select". Este método marca o conteúdo do objeto com uma tarja roxa, permitindo ao usuário, em caso de substituição do conteúdo do campo, não ter que deletar o conteúdo anterior, pois, com este método, a deleção se dá de forma automática quando da digitação do novo conteúdo. Exemplo 38 Focando um Objeto <title>exemplo 38</title> <body onload="document.frmmatricula.matricula.focus()"> <form name="frmmatricula"> Matricula:<input type="text" name="matricula" size="10"><br> Nome:<input type="text" name="nome" size="30"><br> Turma: <select name="turma"> <option value="0">escolha a Turma</option> <option value="1">turma 1</option> <option value="2">turma 2</option> <option value="3">turma 3</option> </select> </form>

UENF Curso de Javascript Prof. Sérgio Rodrigues Pg 17 Validando um Formulário Uma outra maneira de incrementar seu formulário é tratá-lo de forma que seus campos sempre estejam corretos. Por exemplo, em um cadastro de Matricula de Alunos, não se pode submeter um formulário sem o nome e sem a matrícula do aluno... veja um exemplo prático desta situação: Exemplo 39 Validando um Formulario <title>exemplo 39</title> function validaform() var frm = document.frmmatricula; if (frm.matricula.value == "") alert("preencha a Matricula!"); frm.matricula.focus(); else if (frm.nome.value == "") alert("preencha o Nome!"); frm.nome.focus(); else if (frm.turma.value == "0") alert("escolha a Turma!"); frm.turma.focus(); else alert("matricula efetuada com sucesso!"); <body onload="document.frmmatricula.matricula.focus();"> <form name="frmmatricula"> Matricula:<input type="text" name="matricula" size="10"><br> Nome:<input type="text" name="nome" size="30"><br> Turma: <select name="turma"> <option value="0">escolha a Turma</option> <option value="1">turma 1</option>

UENF Curso de Javascript Prof. Sérgio Rodrigues Pg 18 <option value="2">turma 2</option> <option value="3">turma 3</option> </select> <p> <input type="button" name="btnconfirma" value="confirmar" onclick="validaform();"> <input type="reset" name="btnlimpar" value="limpar"> </form> Calculando o preço de um computador Podemos criar várias outras páginas de iteração com o usuário. O exemplo a seguir trata-se de uma página para calcular o preço de um computador dinamicamente, dado a configuração feita pelo cliente. Exemplo 40 Calculando o preco de um computador <title>exemplo 38</title> function calcula() var total = 0; var frm = document.frmpreco; total += parseint(frm.computador.value); total += parseint(frm.impressora.value); for(i=1;i<=5;i++) if ( eval("frm.acessorio"+i+".checked") == true) total += parseint(eval("frm.acessorio"+i+".value")); eval("alert('total = R$' + total + ',00')"); <center><h1>calcule o preco do seu computador!!!</h1></center> <br> <form name="frmpreco"> <table border=1 width="80%" align="center"> <tr> <th width="50%">computador</th> <td>

UENF Curso de Javascript Prof. Sérgio Rodrigues Pg 19 <select name="computador"> <option value="1000">configuracao 1</option> <option value="1500">configuracao 2</option> <option value="2000">configuracao 3</option> <option value="2500">configuracao 4</option> <option value="3000">configuracao 5</option> </select> </td> </tr> <tr> <th width="50%">impressora</th> <td> <select name="impressora"> <option value="0">-- Nenhuma --</option> <option value="200">impressora 1</option> <option value="500">impressora 2</option> <option value="800">impressora 3</option> </select> </td> </tr> <tr> <th width="50%">acessorios</th> <td> <input type="checkbox" name="acessorio1" value="100">acessorio 1</input><br> <input type="checkbox" name="acessorio2" value="200">acessorio 2</input><br> <input type="checkbox" name="acessorio3" value="300">acessorio 3</input><br> <input type="checkbox" name="acessorio4" value="400">acessorio 4</input><br> <input type="checkbox" name="acessorio5" value="500">acessorio 5</input><br> </td> </tr> </table> <p> <center> <input type="button" value="calcula o valor total" onclick="calcula();"> </center> </form>

UENF Curso de Javascript Prof. Sérgio Rodrigues Pg 20 Criando novas instâncias Através do operador new podem ser criadas novas instâncias a objetos já existentes, mudando o seu conteúdo, porém, mantendo suas propriedades. A sintaxe geral é a seguinte: NovoObjeto = new ObjetoExistente (parâmetros) Exemplo1: MinhaData = new Date () MinhaData passou a ser um objeto tipo Date, com o mesmo conteúdo existente em Date (data e hora atual) Exemplo2: MinhaData = new Date(1996, 05, 27) MinhaData passou a ser um objeto tipo Date, porém, com o conteúdo de uma nova data. Exemplo 41 Criando novas instâncias <title>exemplo 41</title> function data() dataatual = new Date(); return dataatual; <form> <input type="button" value="data Atual" onclick="alert(data());"> </form> Manipulando Arrays A forma de se criar um array em Javascript é simples, basta associar a uma variável a instância Array(nro). Onde nro é o número de objetos criados.

UENF Curso de Javascript Prof. Sérgio Rodrigues Pg 21 Exemplo 42 Manipulando Arrays <title>exemplo 42</title> var diasemana = new Array(7) diasemana[0] = "Domingo"; diasemana[1] = "Segunda"; diasemana[2] = "Terca"; diasemana[3] = "Quarta"; diasemana[4] = "Quinta"; diasemana[5] = "Sexta"; diasemana[6] = "Sabado"; var hoje = new Date(); var diahoje = hoje.getday(); <form> <input type="button" value="data Atual" onclick="alert(diasemana[diahoje]);"> </form> É importante lembrar que, embora os exemplos estejam com indexadores fixos, os indexadores podem ser referências ao conteúdo de variáveis. Manipulando Datas A função Date() devolve data e hora no formato:dia da semana, Nome do mês, Dia do mês, Hora:Minuto:Segundo e Ano Ex. Fri May 24 16:58:02 1996 Para se obter os dados separadamente, existem os seguintes métodos: getdate() - Obtém o dia do mês (numérico de 1 a 31) getday() - Obtém o dia da semana (0 a 6) getmonth() - Obtém o mês (numérico de 0 a 11) getyear() - Obtém o ano gethours() - Obtém a hora (numérico de 0 a 23) getminutes() - Obtém os minutos (numérico de 0 a 59) getseconds() - Obtém os segundos (numérico de 0 a 59)

UENF Curso de Javascript Prof. Sérgio Rodrigues Pg 22 No exemplo abaixo obteremos a data do sistema em português, na forma: Dia da semana, Dia do mês, nome do Mês e Ano. Exemplo 43 Manipulando Datas <title>exemplo 43</title> var diasemana = new Array(7); var mes = new Array(12); diasemana[0] = "Domingo"; diasemana[1] = "Segunda"; diasemana[2] = "Terca"; diasemana[3] = "Quarta"; diasemana[4] = "Quinta"; diasemana[5] = "Sexta"; diasemana[6] = "Sabado"; mes [0] = "Janeiro"; mes [1] = "Fevereiro"; mes [2] = "Marco"; mes [3] = "Abril"; mes [4] = "Maio"; mes [5] = "Junho"; mes [6] = "Julho"; mes [7] = "Agosto"; mes [8] = "Setembro"; mes [9] = "Outubro"; mes[10] = "Novembro"; mes[11] = "Dezembro"; var hoje = new Date(); var diahoje = hoje.getday(); var nrodia = hoje.getdate(); var meshoje = hoje.getmonth(); var anohoje = hoje.getyear(); msg = diasemana[diahoje] + ", "; msg += nrodia + " de " + mes[meshoje]; msg += " de " + anohoje; document.write("<b>"+msg+"</b>");

UENF Curso de Javascript Prof. Sérgio Rodrigues Pg 23 Manipulando String s O Javascript é bastante poderoso no uso de String s, fornecendo ao programador uma total flexibilidade em seu manuseio. Abaixo estão apresentados os métodos mais comuns para o tratamento de string s. string.length - retorna o tamanho da string (quantidade de bytes) string.charat(posição) - retorna o caracter da posição especificada (inicia em 0) string.indexof("string") - retorna o número da posição onde começa a primeira "string" string.substring(index1, index2) - retorna o conteúdo da string que corresponde ao intervalo especificado. Começando no caracter posicionado em index1 e terminando no caracter imediatamente anterior ao valor especificado em index2. Vamos verificar o exemplo: Exemplo 44 Manipulando String s <title>exemplo 44</title> var msg = "Joao Carlos da Silva" <h1>veja os resultados</h1> <br> Mensagem = document.write(msg);<p> Tamanho da Mensagem = document.write(msg.length);<br> Caracter da Posicao 0 = document.write(msg.charat(0));<br> Caracter da Posicao 10 = document.write(msg.charat(10));<br> Caracter da ultima Posicao = document.write(msg.charat(msg.length- 1));<br> Posicao da string "Carlos" = document.write(msg.indexof("carlos"));<br> Caracteres entre as posicoes 5 e 10 =

UENF Curso de Javascript Prof. Sérgio Rodrigues Pg 24 document.write(msg.substring(5,10));<br> Exibindo informações do Navegador Você pode utilizar o Javascript para obter as informações sobre o navegador corrente, bem como descobrir a resolução do vídeo. Para isto, basta utilizar os seguintes métodos: navigator.appname Nome do Navegador navigator.appversion Versão do Navegador screen.width Largura do vídeo screen.height Altura do vídeo Exemplo 45 Informacoes sobre o Navegador <title>exemplo 45</title> <h1>informacoes sobre o Navegador</h1> <p> document.write("nome = " + navigator.appname + "<br>"); document.write("versao = " + navigator.appversion + "<br>"); document.write("resolucao = " + screen.width + "x" + screen.height +"<br>"); Alterando a linha de Status Podemos modificar a linha de status atribuindo um texto a window.status. Exemplo 46 Alterando a linha de status <title>exemplo 46</title>

UENF Curso de Javascript Prof. Sérgio Rodrigues Pg 25 function mensagem(msg) window.status = msg; <body onload="mensagem('texto na linha de status!!!')"> <h1>olhe a linha de Status</h1> Animando páginas com settimeout O método settimeout permite a programação para que uma determinada ação só ocorra após o transcurso de um determinado tempo. settimeout ("Ação", tempo) Onde: Ação é a ação que se quer realizar e tempo é o tempo (em milisegundos) de espera para que a ação ocorra. É importante observar que a ação só ocorrerá uma vez. Para que a ação volte a ocorrer, será necessário repetir o comando dentro da ação, obtendo-se, assim, um LOOP. Rolando mensagens na linha de status Abaixo encontra-se um exemplo de rolagem de mensagens na linha de status. Exemplo 47 Rolando mensagens na linha de status <title>exemplo 47</title> var msg = ""; msg += " --- Mensagem 1 --- "; msg += " --- Mensagem 2 --- "; msg += " --- Mensagem 3 --- "; msg += " --- Mensagem 4 --- "; msg += " --- Mensagem 5 --- "; var pos = 0; function rolarmsg()

UENF Curso de Javascript Prof. Sérgio Rodrigues Pg 26 window.status = msg.substring(pos, msg.length) + msg.substring(0,pos); pos++; if (pos > msg.length) pos=0; settimeout("rolarmsg()", 200); <body onload="rolarmsg()"> <h1>olhe a linha de Status</h1> Criando um Texto Animado O próximo exemplo simula um texto piscando na tela. Veremos adiante, como animar ainda mais este exemplo. Exemplo 48 Texto Animado I <title>exemplo 48</title> <script language="javascript"> var i = 0; var cor = new Array(2); cor [0]="#FFFFFF"; cor [1]="#000000"; function next() i++; if (i > 1) i = 0; document.all.camada.style.color = cor[i]; settimeout("next()", 300); <body onload="next()"> <b> <div align="center" id="camada" style="position:relative;"> <font face="verdana, arial" size=7>uenf</font> <br>

UENF Curso de Javascript Prof. Sérgio Rodrigues Pg 27 <font face="verdana, arial" size=3> Universidade Estadual do Norte Fluminense </font> </b> Agora, adicionaremos algumas cores intermediárias(em tons de cinza) para dar um efeito visual melhor ao nosso texto. Exemplo 49 Texto Animado II <title>exemplo 49</title> <script language="javascript"> var i = 0; var cor = new Array(44); cor [0]="#FFFFFF"; cor [1]="#FFFFFF"; cor [2]="#EEEEEE"; cor [3]="#DDDDDD"; cor [4]="#CCCCCC"; cor [5]="#BBBBBB"; cor [6]="#AAAAAA"; cor [7]="#999999"; cor [8]="#888888"; cor [9]="#777777"; cor[10]="#666666"; cor[11]="#555555"; cor[12]="#444444"; cor[13]="#333333"; cor[14]="#222222"; cor[15]="#111111"; cor[16]="#000000"; cor[17]="#000000"; cor[18]="#000000"; cor[19]="#000000"; cor[20]="#000000"; cor[21]="#000000"; cor[22]="#000000"; cor[23]="#000000"; cor[24]="#000000"; cor[25]="#000000"; cor[26]="#000000";

UENF Curso de Javascript Prof. Sérgio Rodrigues Pg 28 cor[27]="#000000"; cor[28]="#000000"; cor[29]="#000000"; cor[30]="#111111"; cor[31]="#222222"; cor[32]="#333333"; cor[33]="#444444"; cor[34]="#555555"; cor[35]="#666666"; cor[36]="#777777"; cor[37]="#888888"; cor[38]="#999999"; cor[39]="#aaaaaa"; cor[40]="#bbbbbb"; cor[41]="#cccccc"; cor[42]="#dddddd"; cor[43]="#eeeeee"; function next() i++; if (i > 44) i = 0; document.all.camada.style.color = cor[i]; settimeout("next()", 100); <body onload="next()"> <b> <div align="center" id="camada" style="position:relative;"> <font face="verdana, arial" size=7>uenf</font> <br> <font face="verdana, arial" size=3> Universidade Estadual do Norte Fluminense </font> </b> Texto Animado com várias Camadas E finalmente, vamos incluir algumas camadas ao nosso exemplo. Veja que efeito interessante.

UENF Curso de Javascript Prof. Sérgio Rodrigues Pg 29 Exemplo 50 Texto Animado III <title>exemplo 50</title> <script language="javascript"> var i = 0; var j = 0; var cor = new Array(44); cor [0]="#FFFFFF"; cor [1]="#FFFFFF"; cor [2]="#EEEEEE"; cor [3]="#DDDDDD"; cor [4]="#CCCCCC"; cor [5]="#BBBBBB"; cor [6]="#AAAAAA"; cor [7]="#999999"; cor [8]="#888888"; cor [9]="#777777"; cor[10]="#666666"; cor[11]="#555555"; cor[12]="#444444"; cor[13]="#333333"; cor[14]="#222222"; cor[15]="#111111"; cor[16]="#000000"; cor[17]="#000000"; cor[18]="#000000"; cor[19]="#000000"; cor[20]="#000000"; cor[21]="#000000"; cor[22]="#000000"; cor[23]="#000000"; cor[24]="#000000"; cor[25]="#000000"; cor[26]="#000000"; cor[27]="#000000"; cor[28]="#000000"; cor[29]="#000000"; cor[30]="#111111"; cor[31]="#222222"; cor[32]="#333333"; cor[33]="#444444"; cor[34]="#555555"; cor[35]="#666666";

UENF Curso de Javascript Prof. Sérgio Rodrigues Pg 30 cor[36]="#777777"; cor[37]="#888888"; cor[38]="#999999"; cor[39]="#aaaaaa"; cor[40]="#bbbbbb"; cor[41]="#cccccc"; cor[42]="#dddddd"; cor[43]="#eeeeee"; function next() i++; if (i > 44) i = 0; j++; if (j > 2) j=0; if (j==0) document.all.camada0.style.display = 'block'; document.all.camada1.style.display = 'none'; document.all.camada2.style.display = 'none'; if (j==1) document.all.camada0.style.display = 'none'; document.all.camada1.style.display = 'block'; document.all.camada2.style.display = 'none'; if (j==2) document.all.camada0.style.display = 'none'; document.all.camada1.style.display = 'none'; document.all.camada2.style.display = 'block'; eval("document.all.camada"+j+".style.color = cor[i]"); settimeout("next()", 100); <body onload="next()"> <b>

UENF Curso de Javascript Prof. Sérgio Rodrigues Pg 31 <div align="center" id="camada2" style="position:relative; display:none;"> <font face="verdana, arial" size=7>ufrj</font> <br> <font face="verdana, arial" size=3> Universidade Federal do Rio de Janeiro </font> <div align="center" id="camada1" style="position:relative; display:none;"> <font face="verdana, arial" size=7>uff</font> <br> <font face="verdana, arial" size=3> Universidade Federal Fluminense </font> <div align="center" id="camada0" style="position:relative; display:block;"> <font face="verdana, arial" size=7>uenf</font> <br> <font face="verdana, arial" size=3> Universidade Estadual do Norte Fluminense </font> </b>