MiniCurso Jquery - IV SimSis

72
JQUERY EM AÇÃO Thiago Miranda dos Santos Bacharel em Sistemas de Informação Pós Graduado em Engenharia de Sistemas

description

Apresentação sobre o Framework Jquery para IV Simpósio de Sistemas de Informação da FTC - Campus Vitória da Conquista

Transcript of MiniCurso Jquery - IV SimSis

Page 1: MiniCurso Jquery - IV SimSis

JQUERY EM AÇÃO

Thiago Miranda dos SantosBacharel em Sistemas de Informação

Pós Graduado em Engenharia de Sistemas

Page 2: MiniCurso Jquery - IV SimSis

O que é Jquery?

Page 3: MiniCurso Jquery - IV SimSis

O que é Jquery?

É um Framework Javascript

Criado em 2006, e já bem robusto

Veio para simplificar a interatividade e a

criação de efeitos visuais em Websites

Page 4: MiniCurso Jquery - IV SimSis

Quem usa Jquery

E muitos

Mais...

Page 5: MiniCurso Jquery - IV SimSis

Características do Jquery

É Leve (Menos de 100 kb)

É Cross-Browser

É Simples e Rápido

É extensivel com Plugins

Tem uma comunidade enorme de

Desenvolvedores

Filosofia: Escreva menos, Faça mais!

Page 6: MiniCurso Jquery - IV SimSis

Escrever menos, fazer mais

"O foco principal da biblioteca jQuery é a

simplicidade. Por que submeter os

desenvolvedores ao martírio de escrever

longos e complexos códigos para criar

simples efeitos?"

(John Resig - criador do jQuery)

Page 7: MiniCurso Jquery - IV SimSis

Escrever menos, fazer mais

divs = document.getElementByTagName(„div‟);

for (i = 0; i < divs.length; i++) {

divs[i].style.display = „none‟;}

Esconder todas as Divs de uma página em Javascript

Esconder todas as Divs de uma página utilizando Jquery

$(“div”).hide();

Page 8: MiniCurso Jquery - IV SimSis

Para desenvolver bem

WTF??????

?

Código Não Obstrusivo

Separar Programação, Marcação e Estilo

Programação BackEnd (PHP, ASP, JSP, Ruby,

Python...) Marcação (Html)

Estilo (Css)

Programação Front End (Javascript)

Page 9: MiniCurso Jquery - IV SimSis

Como não fazer

<p style="padding-left:10;Color:#000"

onClick=“alert(„Teste‟);“ />Clique aqui</p>

Código Obstrusivo

Page 10: MiniCurso Jquery - IV SimSis

Como Fazer

<p class=“teste” >Clique aqui</p>

No HTML

No CSS

.teste{ padding-letf:10px; color:#000; }

No Javascript (Com Jquery)

$(„.teste‟).onclick(function( ){

alert(„teste‟);

});

Page 11: MiniCurso Jquery - IV SimSis

Vamos ComeçarSites Importantes

jquery.com - Download

api.jquery.com - Documentação

forum.jquery.com - Comunidade

plugins.jquery.com - Extensão

Page 12: MiniCurso Jquery - IV SimSis

Vamos ComeçarDownload

Production – Código Compactado, tamanho do arquivo menor,

são retirados os comentários, os espaçamentos e as quebras

de linha. Ideal para ser utilizado na sua produção.

Development – Código Legível, identado, tamanho do arquivo

maior. Ideal para quem vai desenvolver Plugins ou conhecer a

fundo a biblioteca.

Page 13: MiniCurso Jquery - IV SimSis

Vamos ComeçarInstalação

<html><head> <title>A instalação</title> <script type='text/javascript' src='jquery-1.6.4.min.js'></script></head> ...

Page 14: MiniCurso Jquery - IV SimSis

ConstrutorTudo começa por aqui

$( )

Função de seleção, substitui

Jquery( )

Page 15: MiniCurso Jquery - IV SimSis

Como Funciona

1- Encontre algo no HTML

2- Faça alguma coisa com ele.

$( “.teste”)Encontre

.css(“color:”,”blue”);

Faça alguma coisa com ele

Page 16: MiniCurso Jquery - IV SimSis

Vamos ComeçarHello World

$(document).ready(function(){

alert(“Hello World”);

});

Não se esqueça do $(document).ready

Vamos utilizá-lo muito!!!!

Page 17: MiniCurso Jquery - IV SimSis

Método Ready

$(document).ready

• Equivalente ao window.onload do Javascript

• Aguarda o carregamento da árvore do

documento para executar os scripts

• Serve de Container para os Scripts

• Diferente do onload ele não espera tudo

estar carregado e sim só a árvore do

documento.

Page 18: MiniCurso Jquery - IV SimSis

Árvore do Documento

Page 19: MiniCurso Jquery - IV SimSis

Seletores

• Seletores Simples

• Seletores Compostos

• Seletores de Filtros

• Seletores de Conteúdo

• Seletores de Atributos

• Seletores de Formulários

Page 20: MiniCurso Jquery - IV SimSis

Para a Prática

$(„seletor‟).css(„atributo‟,‟valor‟);

Método CSS

background color

$(„seletor‟).css(„background‟,‟red‟);

$(„seletor‟).css(„color‟,‟green‟);

$(„seletor‟).css(„color‟,‟#FF00EE‟);

Page 21: MiniCurso Jquery - IV SimSis

Seletores Simples

•Você acessa diretamente os elementos com

o Ids, Classes e tipos especificados.

$(„#teste‟)

<div id=“teste”></div>

acessa

Page 22: MiniCurso Jquery - IV SimSis

Seletores Simples

•Você acessa diretamente os elementos com

o Ids, Classes e tipos especificados.

$(„.teste‟)

<div class=“teste”></div>

acessa

Page 23: MiniCurso Jquery - IV SimSis

Seletores Simples

•Você acessa diretamente os elementos com

o Ids, Classes e tipos especificados.

$(„div‟)

<div></div>

<div></div>

Acessa todas as divs do documento

Page 24: MiniCurso Jquery - IV SimSis

Seletores Compostos

•É a combinação de dois ou mais seletores

simples

$(„div p‟)

<div><p>Teste</p></div>

<p></p>

Acessa o parágrafo apenas dentro da div

Page 25: MiniCurso Jquery - IV SimSis

Seletores Compostos

$(„div > p‟)

Acessa os parágrafo que tenham um

elemento div como pai

$(„pai > filho‟)

<div>

<p>Teste</p>

<p>Teste</p>

</div>

Page 26: MiniCurso Jquery - IV SimSis

Seletores Compostos

$(„div + p‟)

Acessa o parágrafo posterior a div

$(anterior + posterior)

<div>

<p>Teste</p>

</div>

<p>Teste</p> - Acessa apenas este

Page 27: MiniCurso Jquery - IV SimSis

Seletores Compostos

$(„h2 ~ p‟)

Acessa os parágrafos irmãos posteriores a

h2

$(anterior ~ irmãos)

<h2>Teste</h2>

<p>Teste</p> - Acessa este

<p>Teste</p> - Acessa este

<div><p>teste</p></div> - Não Acessa este

Page 28: MiniCurso Jquery - IV SimSis

Seletores Filtros

$(„li:first‟)

Acessa o primeiro item de uma lista

$(seletor:first) $(seletor:last)

<ul>

<li>Teste</li> - Acessa este

<li>Teste</li>

<li>Teste</li>

</ul>

Page 29: MiniCurso Jquery - IV SimSis

Seletores Filtros

$(„li:last‟)

Acessa o último item de uma lista

$(seletor:first) $(seletor:last)

<ul>

<li>Teste</li>

<li>Teste</li>

<li>Teste</li> - Acessa este

</ul>

Page 30: MiniCurso Jquery - IV SimSis

Seletores Filtros

$(„li:not(li:first)‟)

Apenas não acessa o primeiro

item de uma lista

$(seletor:not(seletor2))

<ul>

<li>Teste</li> - Não acessa este

<li>Teste</li> - Acessa este

<li>Teste</li> - Acessa este

</ul>

Page 31: MiniCurso Jquery - IV SimSis

Seletores Filtros

$(„li:eq(1)‟)Acessa o índice 1 de uma lista, começando de 0

$(seletor:eq(índice))

<ul>

<li>Teste</li>

<li>Teste</li> - Acessa este

<li>Teste</li>

</ul>

Page 32: MiniCurso Jquery - IV SimSis

Seletores Filtros

$(„li:even‟)Acessa os índices pares

$(seletor:even)

<ul>

<li>Teste</li> - Acessa este

<li>Teste</li>

<li>Teste</li> - Acessa este

</ul>

Page 33: MiniCurso Jquery - IV SimSis

Seletores Filtros

$(„li:odd‟)Acessa os índices ímpares

$(seletor:odd)

<ul>

<li>Teste</li>

<li>Teste</li> - Acessa este

<li>Teste</li>

</ul>

Page 34: MiniCurso Jquery - IV SimSis

Seletores Filtros

$(„li:gt(1)‟)Acessa os índices maiores que o indicado

$(seletor:gt(índice))

<ul>

<li>Teste</li>

<li>Teste</li>

<li>Teste</li> - Acessa este

</ul>

Page 35: MiniCurso Jquery - IV SimSis

Seletores Filtros

$(„li:lt(1)‟)Acessa os índices menores que o indicado

$(seletor:lt(índice))

<ul>

<li>Teste</li> - Acessa este

<li>Teste</li>

<li>Teste</li>

</ul>

Page 36: MiniCurso Jquery - IV SimSis

Seletores Filtros

$(„li:lt(1)‟)Acessa os índices menores que o indicado

$(seletor:lt(índice))

<ul>

<li>Teste</li> - Acessa este

<li>Teste</li>

<li>Teste</li>

</ul>

Page 37: MiniCurso Jquery - IV SimSis

Seletores de Conteúdo

$(„p:contains(„dentro‟)‟)Acessa um parágrafo que contém a palavra dentro

$(seletor:contains(‘texto’))

<p>Teste dentro</p> - Acessa este

<p>Teste</p>

<p>Teste</p>

Page 38: MiniCurso Jquery - IV SimSis

Seletores de Conteúdo

$(„div:has(p)‟)Acessa uma div que contenha um parágrafo

$(seletor:has(seletor2))

<div><p>Teste dentro</p></div> - Acessa este

<div>Teste</div>

<div></div>

Page 39: MiniCurso Jquery - IV SimSis

Seletores de Conteúdo

$(„div:hidden‟)Acessa uma div que esteja em modo de visibilidade oculto.

Outros

$(„div:parent‟)Acessa uma div que contenham elementos.

$(„div:visible‟)Acessa uma div que esteja visível.

Page 40: MiniCurso Jquery - IV SimSis

Seletores de Atributos

$(„div[id=teste]‟)Acessa uma div que tenha o id igual a teste

$(seletor[atributo]) ou

$(seletor[atributo=valor])

<div><p>Teste dentro</p></div>

<div id=“teste”>Teste</div> - Acessa este

<div></div>

Page 41: MiniCurso Jquery - IV SimSis

Seletores de Atributos

$(„div[id!=teste]‟)

$(seletor[atributo!=valor])

<div><p>Teste dentro</p></div> - Acessa este

<div id=“teste”>Teste</div>

<div></div> - Acessa este

Acessa uma div que tenha o id diferente a teste

Page 42: MiniCurso Jquery - IV SimSis

Seletores de Atributos

$(„div[id^=teste]‟)

$(seletor[atributo^=valor])

<div><p>Teste dentro</p></div>

<div id=“teste”>Teste</div> - Acessa este

<div id=“teste2”></div> - Acessa este

Acessa uma div que tenha o id iniciado por teste

Page 43: MiniCurso Jquery - IV SimSis

Seletores de Atributos

$(„div[id *= teste]‟)Acessa uma div que tenha teste dentro do valor do atributo

Outros

$(„div[id $= este]‟)Acessa uma div que o valor do id termina com este.

$(„div[id = teste][class = bola]‟)Acessa uma div que satisfaz os atributos selecionados, pode

se adicionar quantos atributos forem necessários.

Page 44: MiniCurso Jquery - IV SimSis

Seletores de Formulários

$(„:text‟)

$(:seletor)

<label><input type=“text”></label> - Acessa este

<label><input type=“password”></label>

Acessa os inputs do tipo texto em um formulário

Page 45: MiniCurso Jquery - IV SimSis

Seletores de Formulários

$(„:text‟)

$(„:password‟)

$(„:radio‟)

$(„:checkbox‟)$(„:enabled‟)

$(„:disabled‟)

$(„:checked‟)

$(„:select‟)

Page 46: MiniCurso Jquery - IV SimSis

Prática

5 Minutos

Page 47: MiniCurso Jquery - IV SimSis

Prática

-Colorir o Background de verde da 1º e do

3º Itens de uma lista no documento com

apenas uma linha.

- Selecionar uma div que vem após a div

com id teste2 e pintá-la de azul.

- Selecionar os campos select no

formulário e pintá-los de vermelho.

- Selecionar todas as divs que contenham

o nome teste e pintá-las de preto.

Page 48: MiniCurso Jquery - IV SimSis

Eventos

• Evento = Gatilho

• Uma ação realizada pelo usuário que

faz com que o Script seja rodado.

• Sem Eventos não teria motivo da

existência do javascript, muito menos do

Jquery.

Page 49: MiniCurso Jquery - IV SimSis

Eventos

.click( )Executa uma ação no momento em que o seletor é clicado

$(„#botao1‟).click(function( )

{

Ações

});

Page 50: MiniCurso Jquery - IV SimSis

Eventos

.dblclick( )Executa uma ação no momento em que o seletor é clicado

duas vezes seguidas (duplo clique)

$(„#botao1‟).dblclick(function( )

{

Ações

});

Page 51: MiniCurso Jquery - IV SimSis

Eventos

.blur( )Quando o seletor não está mais com o foco sobre ele, muito

utilizado em formulários.

$(„:text‟).blur(function( )

{

Ações

});

Page 52: MiniCurso Jquery - IV SimSis

Eventos

.change( )Quando o valor do seletor for alterado ele realiza uma ação.

$(„:checkbox‟).change(function( )

{

Ações

});

Page 53: MiniCurso Jquery - IV SimSis

Eventos

.focus( )Quando o seletor entrar em foco uma ação é executada.

Muito utilizada também em formulários

$(„:text‟).focus(function( )

{

Ações

});

Page 54: MiniCurso Jquery - IV SimSis

Eventos

.keydown( )Quando uma tecla é digitada no seletor uma ação é

executada.

$(„:text‟).keydown(function( )

{

Ações

});

Page 55: MiniCurso Jquery - IV SimSis

Eventos

.keyup( ) e .keypress( ) Keyup é quando uma tecla pressionada é solta no seletor

Keyup é quando uma tecla é pressionada e solta no seletor

$(„:text‟).keyup(function( )

{

Ações

});

Page 56: MiniCurso Jquery - IV SimSis

Eventos

.mousedown( ) Quando o ponteiro do mouse é clicado sobre o seletor

$(„h1‟).mousedown(function( )

{

Ações

});

Page 57: MiniCurso Jquery - IV SimSis

Eventos

.mouseup( ) Quando o clique no mouse é solto sobre o seletor

$(„h1‟).mouseup(function( )

{

Ações

});

Page 58: MiniCurso Jquery - IV SimSis

Eventos

.mouseover( ) Quando o ponteiro do mouse passa sobre o seletor

$(„h1‟).mouseover(function( )

{

Ações

});

Page 59: MiniCurso Jquery - IV SimSis

Eventos

Muitos Outros

.load

.submit

.unload

.select

.scroll

.resize

.error

Page 60: MiniCurso Jquery - IV SimSis

Prática

10 Minutos

Page 61: MiniCurso Jquery - IV SimSis

Prática

- Faça com que o botão 1 ao ser clicada

pinte todas as Divs de Azul

- Faça com que o botão 2 ao ser Clicado

Duplamente pinte apenas a 1ª Div de azul

- Faça com que o campo texto ao sair de

foco pinte os pinte a última div de verde

- Ao mudar o valor do select pinte os itens

pares da lista presente no arquivo

Page 62: MiniCurso Jquery - IV SimSis

Eventos

Muitos Outros

.load

.submit

.unload

.select

.scroll

.resize

.error

Page 63: MiniCurso Jquery - IV SimSis

Métodos

Estilização

.css( )Utiliza as regras do css para estilizar

os seletores.

Ex.: Background, Color, width,

height, border, display ...

Page 64: MiniCurso Jquery - IV SimSis

Prática

5 Minutos

Page 65: MiniCurso Jquery - IV SimSis

Prática

- Teste novamente o método de estilização

utilizando os outros atributos do css, como

cor da letra, largura, altura, visibilidade.

- Faça este teste utilizando os eventos nos

botões 1, 2 e 3.

Page 66: MiniCurso Jquery - IV SimSis

Métodos

Manipulação

.attr( )Manipula os atributos dos elementos

selecionados

$(„:text‟).attr(„value‟,‟10‟);

Os atributos podem ser tanto acessados quanto manipulados, e vários

atributos podem ser trabalhados

Page 67: MiniCurso Jquery - IV SimSis

Métodos

Manipulação

.html( )Manipula conteúdo html dentro de

um seletor.

$(„.teste1‟).html(„teste<br>teste2‟);

Page 68: MiniCurso Jquery - IV SimSis

Métodos

Manipulação

.text( )Manipula conteúdo textual dentro de

um seletor.

$(„.teste1‟).text(„teste‟);

Page 69: MiniCurso Jquery - IV SimSis

Métodos

Manipulação

.val( )Manipula o atributo value de um

seletor.

$(„:text‟).val(„teste‟);

Page 70: MiniCurso Jquery - IV SimSis

Prática

10 Minutos

Page 71: MiniCurso Jquery - IV SimSis

Prática

- Ao clicar em um botão recupere o texto

do parágrafo abaixo da div com id teste 2 e

adicione em forma de html na div de classe

teste 1.

- Faça com que ao ser digitado um valor

num campo texto o mesmo seja

adicionado na div com id vazia.

Page 72: MiniCurso Jquery - IV SimSis

Twitter: @mirandathiago84

Email: [email protected]

Site: www.thiagomiranda.net