Universidade Da Beira Interior

Documentos relacionados
jquery André Tavares da Silva

R E L A T Ó R I O D A A P R E S E N T A Ç Ã O J Q U E R Y

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

Programação para Internet

Roteiro 2: Conceitos de Tags HTML

Coleção - Análises de marketing em clientes de

PROGRAMAÇÃO PARA INTERNET RICA FUNDAMENTOS DO JQUERY

Web Design. Prof. Felippe

Aula 9: Fundamentos do JQuery Fonte: Plano de Aula Oficial da Disciplina

foi desenvolvida... para criar animações, manipular eventos e desenvolver aplicações AJAX

Até agora aprendemos formas para nomear e processar dados em Javascript.

Efeitos 101: Trabalhando com animações e transições

Síntese da aula anterior

Curso Superior de Tecnologia em Análise e Desenvolvimento de Sistemas Prof. Felippe Scheidt IFPR Campus Foz do Iguaçu 2014/2

Desenvolvedor Web Docente André Luiz Silva de Moraes

DOCUMENTAÇÃO DO FRAMEWORK - versão 2.0

O que é o JavaScript?

QUEM FEZ O TRABALHO?

HTML. (Hypertext Markup Language Linguagem de Marcação de Hipertexto)

Imagens: <img src="..."> src <img src="tecnologia.jpg"> único atributo que não pode ser omitido neste TAG Nota: img

AJAX JSON JQUERY. Prof. Fellipe Aleixo

Desenvolvedor Web Docente André Luiz Silva de Moraes

jquery Apostila Básica

Imagens: <IMG SRC="..."> SRC <IMG SRC="tecnologia.jpg"> único atributo que não pode ser omitido neste tag Nota: img

PDI 1 - Projeto e Design de Interfaces Web

HTML. Conceitos básicos de formatação de páginas WEB

Aula 5 Cabeçalhos, Imagens e Links

CSS é a abreviatura para Cascading Style Sheets Folhas de Estilo em Cascata

1. HTML - Introdução. Hyper Text Markup Language. É uma linguagem de formatação de conteúdos. Portável. Ficheiros de pequena dimensão

Coleção - Análises de marketing em clientes de


TABLELESS E PROJETO ESTRUTURAL

Desenvolvimento de Sites com PHP e Mysql Docente André Luiz Silva de Moraes

#Aula Nº 3 Estilo CSS webstandards.samus.com.br webstandards.samus.com.br/aulas/aula3.pdf Vinicius Fiorio Custódio samus@samus.com.

José Janeiro (Nº2467) Trabalho prático: HTML, CSS, Javascript. EmpregoWeb-Registo de pessoas

1) Criar o código HTML para construir a página representada pela imagem abaixo.

Escola Superior de Tecnologia de Setúbal. Projecto Final

Ajax não é dependente dos servidores Web, e como tal poderá ser usado com PHP, JSP, ASP e ASP.NET.

Introdução. História. Como funciona

JQuery. 2ª Edição Revisada e ampliada. Maurício Samy Silva

Posicionamento e Layout com CSS

Observações importantes:

Roteiro de Estudos e Atividades Avaliativas HTML

Coleção - Análises de marketing em clientes de

HTML / JAVASCRIPT. A versão atual é o HTML5 (seus predecessores imediatos são HTML 4.01, XHTML 1.1, etc.).

WebDesign. Professor: Paulo Trentin Escola CDI de Videira

MANUAL DE BOAS PRÁTICAS

Módulo: Criação de Páginas WEB

Web Design Aula 15: Conhecendo CSS

Mini-curso de PHP. Aulas ministradas por: André Luis de Paula Arthur Kalsing Diego Silva

mkdir /srv/www/default/html/calculadora/imagens mkdir /srv/www/default/html/calculadora/blocos

Sumário. HTML CSS JQuery Referências IHC AULA

Definindo um Layout de Website sem Tabelas Vou apresentar nesse post como fazer o código do layout de um website sem utilizar

Microsoft Office FrontPage 2003

4. Características Gerais das Tabelas do HTML

Web Design Aula 01. No Caderno Responda as Questões abaixo

Programação para Internet

#Aula Nº 4 XHTML+CSS webstandards.samus.com.br webstandards.samus.com.br/aulas/aula4.pdf Vinicius Fiorio Custódio samus@samus.com.

PROGRAMAÇÃO MANUAL DE INSTRUÇÕES SEJA BEM VINDO VERSÃO /01/2013 UDS SOLUÇÕES DIGITAIS

Desenvolvimento de Sites com PHP e Mysql Docente André Luiz Silva de Moraes

02 - Usando o SiteMaster - Informações importantes

Desenvolvida exclusivamente para o Apostilando.com por Marcos Paulo Furlan

INTRODUÇÃO AO DESENVOLVIMENTO WEB. PROFª. M.Sc. JULIANA H Q BENACCHIO

Curso PHP Básico. Jairo Charnoski do Nascimento

Introdução ao HTML Hypertext Markup Language

Lista de Revisão. 3. Analise a afirmativa a seguir como verdadeira ou falsa e justifique.

Tarefa Orientada 18 Tabelas dinâmicas

Introdução ao HTML. Sumário

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

VISUAL LIGHTBOX FERRAMENTA WEB DESIGN FABIANO KEIJI TAGUCHI

Introdução às Folhas de Estilo

Como implementar Cache Busting nas tags da Atlas. O que são tags? O que é Cache Busting?

Scriptlets e Formulários

Google Sites. A g r u p a m e n t o C a m p o A b e r t o /

Manual do Publicador. Wordpress FATEA Sistema de Gerenciamento de Conteúdo Web

Como criar uma página WEB

Manual de construção HTML5

PLANNER CONSULTORIA E SISTEMAS

Webdesign HTML. Introdução a HTML e as principais tags da linguagem. Thiago Miranda dos Santos Souza

<head>/*o elemento <head> deve incluir um título para o documento, e pode incluir scripts, estilos, informações de meta, e muito mais*/

Primeiro contato com JavaScript

Relatório de Análise de um Sítio Web - UPTEC -

CSS. Sérgio Nunes. Comunicações Digitais e Internet Ciências da Comunicação, U.Porto 2012/13

<link rel="stylesheet" type="text/css" href="imagens.css" />

#Aula Nº 1 Introdução webstandards.samus.com.br Vinicius Fiorio Custódio samus@samus.com.br

Formatos de publicidade

Programação para Internet I

TECNOLOGIAS WEB. Unidade 3 Linguagem de Marcação e Estilo. Luiz Leão

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

Centro de Competência Entre Mar e Serra. Guia

Prof. Vania Gimenez- Aula de Hoje Caro aluno- Este material é só um apoio as aulas, os livros devem ser utilizados para o aprimoramento de seu estudo.

Desenvolvimento de Aplicações para Internet Aula 11

Responsive Web Design

Transcrição:

1 Universidade Da Beira Interior Sistemas Distribuídos e Tolerância a Falhas Estudo da Tecnologia jquery Tiago Simões m3965 João Pereira m3873 12 De Março de 2011

2 Conteúdo 1. Apresentação da tecnologia... 3 1.1. O que é JQuery... 3 1.2. Para que serve o jquery... 3 1.3. Estrutura do jquery... 3 2. Ferramentas... 4 3. Introdução ao JQuery... 4 3.1. Obter a biblioteca... 4 3.2. Sintaxe... 5 3.3. Integração do jquery... 5 3.4. Selectors... 5 3.4.1. Selectors de Elementos... 6 3.4.2. Selectors de Atributos... 6 3.4.3. Selectors de CSS... 6 3.5. Eventos... 6 3.6. Efeitos... 7 3.7. Callback... 7 3.8. HTML no JQuery... 7 3.9. CSS no JQuery... 8 3.10. AJAX no JQuery... 8 4. Exemplo... 9 4.1. Galeria... 9 4.2. Mudar cor de fundo da página... 12

3 1. Apresentação da tecnologia 1.1. O que é JQuery O jquery é uma biblioteca JavaScript criada por John Resig, de código aberto, sob a licença GPL (General Public Licence), o que significa que a biblioteca pode ser usada de forma gratuita tanto no desenvolvimento de projectos pessoais como comerciais. Esta biblioteca é extremamente rápida e concisa, que visa simplificar o processamento de eventos, criação de animações, funcionalidades interactivas e interacções de AJAX. Assim Muitas linhas de programação em JavaScript para obter um simples efeito sobre determinado objecto são substituídas por algumas, escritas com o jquery. 1.2. Para que serve o jquery A biblioteca jquery foi desenvolvida para facilitar a maneira em que adicionamos interactividade e dinamismo às páginas Web, proporcionando ao desenvolvedor funcionalidades para desenvolver scripts visando incrementar, de forma não obstrutiva, a usabilidade, a acessibilidade e o design, enriquecendo a navegação do utilizador. Sendo esta uma ferramenta poderosa de produção e interactividade esta é constituída pelas seguintes funcionalidades: Selecção e manipulação de elementos HTML; Manipulação de folhas de estilo CSS; Efeitos e animações; Suporte a AJAX. 1.3. Estrutura do jquery Plugin API Expressões de Selectors Métodos Gerais Métodos de Eventos Métodos AJAX Métodos de Efeitos Estrutura Métodos DOM

Google Microsoft Universidade da Beira Interior 4 2. Ferramentas Para utilizar a biblioteca JQuery é apenas necessário a source jquery, um editor de texto como o Notepad++ ou um ambiente de desenvolvimento tal como o NetBeans. 3. Introdução ao JQuery 3.1. Obter a biblioteca O jquery está disponível em dois formatos distintos, que podem ser descarregados a partir da página oficial do projecto (jquery.com), sendo eles: Ficheiro comprimido (o mais utilizado); Ficheiro não comprimido, adequado para quem quiser ler o código, efectuar debugging do mesmo, etc. Depois de obter os ficheiros, é necessário incluir os mesmos na página web a ser desenvolvida: <head> <script type="text/javascript" src="jquery.js"></script> </head> Para além destes métodos, é possível não ter de armazenar e descarregar os ficheiros do jquery para os nossos computadores, sendo disponibilizado um serviço de hospedagem da biblioteca, quer pela Microsoft, quer pelo Google. Para tal, basta adicionar o seguinte código á página web em desenvolvimento, escolhendo um dos dois serviços: <head> <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></ script> </head> <head> <script type="text/javascript" src="http://ajax.microsoft.com/ajax/jquery/jquery- 1.4.2.min.js"></script> </head>

5 3.2. Sintaxe A sintaxe do jquery foi pensada de forma a aplicar determinadas acções a determinados elementos de uma página. De uma forma geral, a sintaxe básica de uma instrução jquery define-se da seguinte forma: $(elemento).go() $ define uma instrução jquery; (elemento) define o elemento ou tag HTML a pesquisar; Go() define qual a acção a ser executado no elemento seleccionado. 3.3. Integração do jquery De forma a evitar possíveis erros, o código jquery deve ser apenas executado após o documento HTML em causa ser totalmente carregado, evitando por exemplo tentativas de alterar um elemento que ainda não foi carregado, portanto ainda não existente. Como tal, deve colocar-se as instruções jquery dentro da função ready: <html> <head> <script type="text/javascript" src="jquery.js"></script> <script type="text/javascript"> $(document).ready(function(){ //Instruções jquery </script> </head> <body> <h1> Olá Mundo! </h1> </body> </html> 3.4. Selectors Os selectors são os elementos jquery que permitem a escolha ou selecção de um elemento HTML ou CSS a ser modificado pela instrução jquery desejada.

6 3.4.1. Selectors de Elementos O jquery usa os selectors do CSS para seleccionar os elementos HTML, como por exemplo, as seguintes instruções: $( #p ) - Selecciona o primeiro elemento HTML com id=p. $( p.exemplo ) - Selecciona os elementos entre tags <p> com a classe CSS exemplo. 3.4.2. Selectors de Atributos O jquery usa expressões de forma a conseguir seleccionar atributos desejados, como por exemplo: $( *href+ ) - Seleciona todos os elementos com um atributo href. $( *href$=.jpg + ) - Selecciona os elementos com um atributo href, cujo argumento termina em.jpg. 3.4.3. Selectors de CSS De igual forma, o jquery permite modificar propriedades dos ficheiros de estilo CSS de uma determinada página. Para tal, basta selecionar o elemento CSS desejado, como por exempo: $( p ).css( font-familly, Arial, Sans Serif ) - Altera a família de fontes de todos os elementos <p> da página. 3.5. Eventos Os métodos de manipulação de eventos são funções presentes no core do jquery. Os manipuladores de eventos são métodos que são chamados quando alguma coisa acontece no HTML. O termo trigger é frequentemente usado. Consideramos alguns métodos de manipulação de eventos no JQuery: Método $(document).ready(function) $(selector).click(function) $(selector).dblclick(function) $(selector).focus(function) Descrição Liga uma função quando um documento se encontra completamente carregado. Trigger/Dispara quando existe um click num determinado elemento. Trigger/Dispara quando existe um duplo click num determinado elemento. Trigger/Dispara quando existe o foco num determinado elemento.

7 $(selector).mouseover(function) Trigger/Dispara quando é detectado que o rato esta sobre um determinado elemento. 3.6. Efeitos O JQuery proporciona um conjunto de funções que permitem animar um conjunto de elementos HTML. Consideramos algumas funções para animar elementos HTML: Função hide() show() Descrição Permite esconder elementos HTML. Permite mostrar elementos HTML. fadein() Permite realizar uma animação fade in. fadeto() slide() animate() Permite realizar uma animação fade out. Permite realizar uma animação onde existe a mudança de altura do elemento animado. Permite executar uma animação personalizada. 3.7. Callback Uma função callback é executada depois de uma determinada animação ter terminado. Esta funcionalidade poderá ser observada, no seguinte exemplo: $("p").hide(1000,function(){ alert("the paragraph is now hidden"); 3.8. HTML no JQuery Os elementos HTML podem ser manipulados no JQuery utilizado um conjunto de funções. Na tabela seguinte apresentamos algumas dessas funções: Função html() append() Descrição Altera o conteúdo HTML de um elemento. Adicionar conteúdo a um elemento HTML

8 after() Adicionar elementos HTML após um determinado elemento 3.9. CSS no JQuery O jquery tal como já referido permite manipular todos os ficheiros de estilo CSS de uma página, para tal, disponibiliza um conjunto de métodos pré-definidos que visam facilitar a produção de tais instruções. Método css() hasclass() addclass() removeclass() toggleclass() offset() offsetparent() height() width() scrollleft() scrolltop() position() Descrição Define ou retorna uma ou mais propriedades CSS do elemento selecionado. Verifica se algum dos elementos tem uma determinada classe. Adiciona uma ou mais classes aos elementos selecionados. Remove uma ou mais classes aos elementos selecionados. Alterna entre a adição e remoção de um ou mais classes do elemento selecionado. Define ou retorna a posição do elemento selecionado. Retorna o primeiro elemento parente que está posicionado. Define ou retorna a altura de um determinado elemento. Define ou retorna a largura de um determinado elemento. Define ou retorna a posição horizontal da scrollbar do elemento selecionado. Define ou retorna a posição vertical da scrollbar do elemento selecionado. Retorna a posição do primeiro elemento selecionado. 3.10. AJAX no JQuery O JQuery providencia um conjunto de métodos para desenvolvimento em AJAX. Com o JQuery AJAX será possível requisitar informação TXT, HTML, XML e JSON de um servidor remoto usando tanto HTTP GET como HTTP POST.

9 Na seguinte tabela consideramos alguns dos métodos AJAX presentes no JQuery: Método ajax() ajaxcomplete() ajaxerror() ajaxstart() ajaxsucess() load() Descrição Efectua um AJAX request. Permite especificar uma função após a execução de um AJAX request. Permite especificar uma função quando existe um erro no AJAX request. Permite especificar uma função quando o AJAX request é iniciado. Permite especificar uma função Permite carregar informação do servidor para uma determinada elemento HTML. 4. Exemplo 4.1. Galeria

10 Trata-se de um simples álbum de fotografias, permite mostrar uma pequena animação que mostra a descrição de uma ou mais fotografias. Esta animação é possível recorrendo à função animate() do JQuery. O exemplo é constituído por um ficheiro JSP, um ficheiro de estilo, pela biblioteca JQuery e por fim por um ficheiro javascript que contem as instruções necessárias para a execução da animação. Em termos de princípios de funcionamento o ficheiro JSP, index.jsp, é constituído por um conjunto de elementos HTML, incluindo uma lista ao qual irá albergar um n número de imagens (Tabela 1). Tabela 1 index.jsp <!-- INICIO DA GALERIA --> <tr> <td> <ul class="hover_block"> <li><a href="#"><img width="328px" heigth="128px" src = "imagens/cvl.jpg" alt = "alt" /> Covilhã</a></li> <li><a href="#"><img width="328px" heigth="128px" src = "imagens/se.jpg" alt = "alt" /> Serra da Estrela</a></li> </tr> </td> </ul> <tr> <td> <ul class="hover_block2"> <li><a href="#"><img width="328px" heigth="128px" src = "imagens/ubi.jpg" alt="alt" /> Universidade da Beira Interior</a></li> <li><a href="#"><img width="328px" heigth="128px" src = "imagens/sh.jpg" alt="alt" /> Serra Shopping</a></li> </tr> </td> </ul> <!-- FIM DA GALERIA --> Esta lista é estilizada recorrendo ao ficheiro de estilo, default.css, previamente criado (Tabela 2). Por fim a animação é executada pelo código que se encontra no ficheiro fotos.js. Tabela 2 default.css

11 /* ESTILOS DA GALERIA */ ul.hover_block li{ list-style:none; float:left; background: #fff; padding: 10px; width:300px; position: relative; margin-right: 20px; ul.hover_block li a { display: block; position: relative; overflow: hidden; height: 150px; width: 268px; padding: 16px; color: #000; font: 1.6em/1.3 Helvetica, Arial, sans-serif; ul.hover_block2 li{ list-style:none; float:left; background: #fff; padding: 10px; width:300px; position: relative; margin-right: 20px; ul.hover_block2 li a { display: block; position: relative; overflow: hidden; height: 150px; width: 268px; padding: 16px; color: #000; font: 1.6em/1.3 Helvetica, Arial, sans-serif; ul.hover_block2 li a { textdecoration: none; ul.hover_block li a { textdecoration: none; ul.hover_block li img { position: absolute; top: 0; left: 0; border: 0; ul.hover_block2 li img { position: absolute; top: 0; left: 0; border: 0; O ficheiro foto.js define a utilização de um selector css associado a um evento hover, ou seja, quando for detectado que o rato passou sobre um elemento da lista HTML este irá executar uma função que permite animar a imagem associada ao elemento da lista, deslocando-a para fora da superfície visível, por outro lado a descrição da imagem é mostrada usando uma segunda função associada ao evento hover (Tabela 3). Tabela 3 fotos.js $(function() { $('ul.hover_block li').hover(function(){ $(this).find('img').animate({

12 top:'182px',{ queue:false, duration:500, function(){ $(this).find('img').animate({ top:'0px',{ queue:false, duration:500 $(function() { $('ul.hover_block2 li').hover(function(){ $(this).find('img').animate({ top:'182px',{ queue:false, duration:500, function(){ $(this).find('img').animate({ top:'0px',{ queue:false, duration:500 4.2. Mudar cor de fundo da página Foi também implementado neste exemplo, uma função para permitir ao utilizador alterar a cor de fundo da página.

13 Clicando num destes três icons disponíveis, a cor de fundo da página da galeria é alterada para a cor correspondente. Tal efeito, é possível pois como já mencionado, o jquery, permite de entre outras funções, alterar as propriedades de campos ou tags, quer HTML, quer CSS. Em termos de princípios de funcionamento o ficheiro JSP, index.jsp, é constituído por um conjunto de elementos HTML, incluindo uma lista composta por três items que permetiram mudar a cor para vermelho, laranja, ou azul (Tabela 4). Tabela 4 index.jsp <!-- INICIO DAS CORES DE BACKGROUND --> <nav> <ul> <li class="one"><a href="#"><img width="35px" heigth="35px" src = "imagens/red.png" alt="alt" /></a></li> <li class="two"><a href="#"><img width="35px" heigth="35px" src = "imagens/orange.png" alt="alt" /></a></li> <li class="three"><a href="#"><img width="35px" heigth="35px" src = "imagens/blue.png" alt="alt" /></a></li> </nav> </ul> <!-- FIM DAS CORES DE BACKGROUND --> Esta lista é estilizada recorrendo ao ficheiro de estilo já apresentado anteriormente (Tabela 5). Por fim a animação é executada pelo código que se encontra no ficheiro cores.js. Tabela 5 default.css /* ESTILOS DAS CORES DE BACKGROUND */.bg1 { background-color: #6c0000;.bg2 { background-color: #5A2A00;.bg3 { background-color: #00345B; nav { float: right; padding: 0 0.7em; white-space: nowrap; nav ul { margin: 0; padding: 0; nav ul li { list-style-type: none; display: inline-block; padding: 0.2em 0;

14 O ficheiro cores.js define a utilização de um selector css associado a um evento click, ou seja, quando for detectado um click sobre um elemento da lista HTML, este irá executar uma função que permite alterar a cor de fundo da página para a cor associada ao elemento da lista escolhido (Tabela 6). Tabela 6 cores.js $(document).ready(function(){ $("li.one").click( function(){ $("body").removeclass('bg2, bg3').addclass("bg1"); $("li.two").click( function(){ $("body").removeclass("bg1, bg3").addclass("bg2"); $("li.three").click( function(){ $("body").removeclass("bg1, bg2").addclass("bg3");