SlideShare ist ein Scribd-Unternehmen logo
1 von 30
Downloaden Sie, um offline zu lesen
Por Bruno Cunha
Definição
• Criada por John Resig em 2006;
• OpenSource (MIT, GPL)
   – Massachusetts Institute of Technology
   – GNU General Public Licence
   – Uso Pessoal e Comercial;
• Framework JavaScript;
• Focado na simplicidade de escrita não
  exigindo conhecimento de programação;
Para que serve
• Adicionar interatividade e dinamismo às páginas web;
• Criar scripts que visem a incrementar:
   – Usabilidade
   – Acessibilidade
   – Design
• Enriquecer a experiência do usuário, de forma
  progressiva e não-obstrutiva;
   – Javascript não obstrutivo diz respeito a scripts que, ao
     serem desabilitados, não interferem no funcionamento da
     página.
Do que jQuery é capaz
• Adicionar efeitos visuais e animações;
• Acessar e manipular o DOM;
  – Document Object Model
• Buscar informações no servidor sem necessidade
  de recarregar a página;
• Prover interatividade;
• Alterar conteúdo;
• Modificar apresentação e estilização;
• Simplificar tarefas específicas de JavaScript;
Compatibilidade nos Navegadores

• Firefox 2.0+

• Internet Explorer 6+

• Safari 3+

• Opera 10.6+

• Chrome 8+
Simplicidade

JQUERY NA PRÁTICA
Muda o jeito de escrever JavaScript

var tables = document.getElementsByTagName('table');
   for (var t = 0; t < tables.length; t++)
   {
       var rows = tables[t].getElementsByTagName('tr');
       for (var i = 1; i < rows.length; i += 2)
       {
           if (!/(^|s)odd(s|$)/.test(rows[i].className))
           {
               rows[i].className += ' odd';
           }
       }
   }
Muda o jeito de escrever JavaScript



$('table tr:nth-child(odd)').addClass('odd');
Filosofia jQuery


Encontrar Coisas

                   Fazer Algo
Filosofia jQuery


$(Encontrar Coisas)

                      .Fazer Algo();
Exemplos

$("div").hide(); //efeito

$("button").remove(); //DOM

$("form").submit(); //evento

$("p").addClass("especial"); //DOM

$("span").show("fast"); //animação
<!DOCTYPE html><html><body>
<ul>
       <li><a>home</a></li>
       <li><a>about</a></li>
</ul>
</body></html>
<!DOCTYPE html><html><body>
<ul>
       <li><a>home</a></li>
       <li><a>about</a></li>
</ul>
<script src="jquery.js"></script>
</body></html>
<!DOCTYPE html><html><body>
<ul>
       <li><a>home</a></li>
       <li><a>about</a></li>
</ul>
<script src="jquery.js"></script><script>
jQuery('ul');
</script>
</body></html>
<!DOCTYPE html><html><body>
<ul id="nav">
    <li><a>home</a></li>
    <li><a>about</a></li>
</ul>
<script src="jquery.js"></script><script>
jQuery('ul').attr('id', 'nav');
</script>
</body></html>
<!DOCTYPE html><html><body>
<ul id="nav">
    <li><a>home</a></li>
    <li><a>about</a></li>
</ul>
<script src="jquery.js"></script><script>
jQuery('ul').attr('id', 'nav');
jQuery('#nav li');
</script>
</body></html>
<!DOCTYPE html><html><body>
<ul id="nav">
    <li class="item"><a>home</a></li>
    <li class="item"><a>about</a></li>
</ul>
<script src="jquery.js"></script><script>
jQuery('ul').attr('id', 'nav');
jQuery('#nav li').addClass('item');
</script>
</body></html>
<!DOCTYPE html><html><body>
<ul id="nav">
    <li class="item"><a>home</a></li>
    <li class="item"><a>about</a></li>
</ul>
<script src="jquery.js"></script><script>
jQuery('ul').attr('id', 'nav');
jQuery('#nav li').addClass('item');
jQuery('#nav a');
</script>
</body></html>
<!DOCTYPE html><html><body>
<ul id="nav">
      <li class="item"><a>home</a></li>
      <li class="item"><a>about</a></li>
</ul>
<script src="jquery.js"></script><script>
jQuery('ul').attr('id', 'nav');
jQuery('#nav li').addClass('item');
jQuery('#nav a').each(function(){
         jQuery(this);
});
</script>
</body></html>
<!DOCTYPE html><html><body>
<ul id="nav">
      <li class="item"><a>home</a></li>
      <li class="item"><a>about</a></li>
</ul>
<script src="jquery.js"></script><script>
jQuery('ul').attr('id', 'nav');
jQuery('#nav li').addClass('item');
jQuery('#nav a').each(function(){
         jQuery(this);
});
</script>
</body></html>
<!DOCTYPE html><html><body>
<ul id="nav">
      <li class="item"><a href="/home">home</a></li>
      <li class="item"><a href="/about">about</a></li>
</ul>
<script src="jquery.js"></script><script>
jQuery('ul').attr('id', 'nav');
jQuery('#nav li').addClass('item');
jQuery('#nav a').each(function(){
         jQuery(this).attr('href', '/' + jQuery(this).text());
});
</script>
</body></html>
<!DOCTYPE html><html><body>
<ul id="nav">
      <li class="item"><a href="/home">home</a></li>
      <li class="item"><a href="/about">about</a></li>
</ul>
<script src="jquery.js"></script><script>
$('ul').attr('id', 'nav');
$('#nav li').addClass('item');
$('#nav a').each(function(){
         $(this).attr('href', '/' + $(this).text());
});
</script>
</body></html>
<!DOCTYPE html><html><body>
<ul id="nav">
      <li class="item"><a href="/home">home</a></li>
      <li class="item"><a href="/about">about</a></li>
</ul>
<script src="jquery.js"></script><script>
$('ul').attr('id', 'nav');
$('#nav li').addClass('item').find('a').each(function(){
         $ (this).attr('href', '/' + $ (this).text());
});
</script>
</body></html>
Chaining (Acorrentar)
$("p").addClass("especial")
      .css("color", "red")
      .append(“Olá Mundo!")
      .show("slow");


• A maioria dos métodos são chainable (possuem
  capacidade de se acorrentarem)
   • Isso acontece porque, por padronização, todos os métodos
     devem retornar o próprio elemento.
   • A mesma padronização é aconselhada aos programadores
     ao criarem plug-ins.
Vantagens
•   Utiliza seletores CSS para localizar elementos da estrutura de marcação HTML da página;

•   Possui arquitetura compatível com instalação de plug-ins e extensões em geral;

•   Possuir um repositório com inúmeros plug-ins disponíveis;

•   É indiferente às inconsistências de renderização entre navegadores;

•   Não há necessidade de construção de loops para localização de elementos no documento;

•   Admite programação encadeada, ou seja, cada método retorna um objeto;

•   É extensível, pois admite criação e inserção de novas funcionalidades;

•   Possui uma ótima documentação;

•   Leve, a versão compactada (e com Gzip) tem 90kb de tamanho;

•   Não obstrutivo
Desvantagens
• Aplicações precisam de um servidor para criar e gerenciar sessões;
• Aplicações precisam de outro aplicativo para fornecer os dados,
   escrito em outra linguagem;
• Em computadores robustos, aplicações maiores podem se tornar
   mais lentas;
• É difícil proteger o código-fonte;
• Pode ser difícil depurar, especialmente se houverem conflitos entre
   scripts;
FrozenSpots
• Construtor $ (cifrão, dólar)
   – referência para o objeto jQuery;

   – é responsável por identificar o elemento passado e chamar o
      respectivo método;

   – Qualquer outro “nome” pode ser usado para representar o objeto,
      sendo o $ (cifrão, dólar) o default.

• Todas as funcionalidades do jQuery possuem comportamento
  default.
HotSpots
• Os plugins (componentes) que podem ser acoplados
  junto ao jQuery.

• O Complemento jQuery UI
  – Oferece funcionalidades de interação com o usuário.

• Todos os métodos possuem parâmetros para
  modificar ou configurar sua funcionalidade.
Quem usa jQuery?
    • Atualmente mais de 19 milhões de sites utilizam jQuery;




Fonte: http://trendspro.builtwith.com
OBRIGADO!
    Bruno Cunha
    E-mail:
    contato@brunocunha.net.br

    Portfólio:
    http://brunocunha.net.br

    Twitter
    http://twitter.com/obrunocunha

Weitere ähnliche Inhalte

Was ist angesagt?

Javascript Orientado a Objetos - Fisl12
Javascript Orientado a Objetos - Fisl12Javascript Orientado a Objetos - Fisl12
Javascript Orientado a Objetos - Fisl12Emerson Macedo
 
Javascript levado a serio
Javascript levado a serioJavascript levado a serio
Javascript levado a serioJaydson Gomes
 
Yet Another Ruby Framework - Como o Rails funciona por dentro
Yet Another Ruby Framework - Como o Rails funciona por dentroYet Another Ruby Framework - Como o Rails funciona por dentro
Yet Another Ruby Framework - Como o Rails funciona por dentroCarlos Brando
 
Curso de Ruby on Rails
Curso de Ruby on RailsCurso de Ruby on Rails
Curso de Ruby on RailsCJR, UnB
 
performance em jQuery apps
performance em jQuery appsperformance em jQuery apps
performance em jQuery appsDavidson Fellipe
 
Introducao ao Ruby On Rails
Introducao ao Ruby On RailsIntroducao ao Ruby On Rails
Introducao ao Ruby On RailsAndre Ferraro
 
Frontline - Rails3.1
Frontline - Rails3.1Frontline - Rails3.1
Frontline - Rails3.1Daniel Lopes
 
Minicurso de JavaScript (Portuguese)
Minicurso de JavaScript (Portuguese)Minicurso de JavaScript (Portuguese)
Minicurso de JavaScript (Portuguese)Bruno Grange
 
Curso JavaScript - Aula de Introdução como Programar
Curso JavaScript - Aula de Introdução como ProgramarCurso JavaScript - Aula de Introdução como Programar
Curso JavaScript - Aula de Introdução como ProgramarTiago Antônio da Silva
 
Javascript levado a sério
Javascript levado a sérioJavascript levado a sério
Javascript levado a sériosaspi2
 
DOMinando JavaScript
DOMinando JavaScriptDOMinando JavaScript
DOMinando JavaScriptThiago Poiani
 
Agilizando o desenvolvimento com j query
Agilizando o desenvolvimento com j queryAgilizando o desenvolvimento com j query
Agilizando o desenvolvimento com j queryPHPRio
 

Was ist angesagt? (19)

Javascript Orientado a Objetos - Fisl12
Javascript Orientado a Objetos - Fisl12Javascript Orientado a Objetos - Fisl12
Javascript Orientado a Objetos - Fisl12
 
Rails na pratica
Rails na praticaRails na pratica
Rails na pratica
 
Javascript levado a serio
Javascript levado a serioJavascript levado a serio
Javascript levado a serio
 
Yet Another Ruby Framework - Como o Rails funciona por dentro
Yet Another Ruby Framework - Como o Rails funciona por dentroYet Another Ruby Framework - Como o Rails funciona por dentro
Yet Another Ruby Framework - Como o Rails funciona por dentro
 
Curso de Ruby on Rails
Curso de Ruby on RailsCurso de Ruby on Rails
Curso de Ruby on Rails
 
Javascript aula 01 - visão geral
Javascript   aula 01 - visão geralJavascript   aula 01 - visão geral
Javascript aula 01 - visão geral
 
performance em jQuery apps
performance em jQuery appsperformance em jQuery apps
performance em jQuery apps
 
Introducao ao Ruby On Rails
Introducao ao Ruby On RailsIntroducao ao Ruby On Rails
Introducao ao Ruby On Rails
 
Frontline - Rails3.1
Frontline - Rails3.1Frontline - Rails3.1
Frontline - Rails3.1
 
Javascript + jQuery
Javascript + jQueryJavascript + jQuery
Javascript + jQuery
 
Minicurso de JavaScript (Portuguese)
Minicurso de JavaScript (Portuguese)Minicurso de JavaScript (Portuguese)
Minicurso de JavaScript (Portuguese)
 
Curso JavaScript - Aula de Introdução como Programar
Curso JavaScript - Aula de Introdução como ProgramarCurso JavaScript - Aula de Introdução como Programar
Curso JavaScript - Aula de Introdução como Programar
 
Ruby On Rails
Ruby On RailsRuby On Rails
Ruby On Rails
 
Javascript levado a sério
Javascript levado a sérioJavascript levado a sério
Javascript levado a sério
 
Javascript OO
Javascript OOJavascript OO
Javascript OO
 
DOMinando JavaScript
DOMinando JavaScriptDOMinando JavaScript
DOMinando JavaScript
 
Aula javascript
Aula  javascriptAula  javascript
Aula javascript
 
Realtime com node.js e socket.io
Realtime com node.js e socket.ioRealtime com node.js e socket.io
Realtime com node.js e socket.io
 
Agilizando o desenvolvimento com j query
Agilizando o desenvolvimento com j queryAgilizando o desenvolvimento com j query
Agilizando o desenvolvimento com j query
 

Ähnlich wie O que é jQuery e para que serve

Interfaces Ricas para WEB com jQuery e jQueryUI (User Interface)
Interfaces Ricas para WEB com jQuery e jQueryUI (User Interface)Interfaces Ricas para WEB com jQuery e jQueryUI (User Interface)
Interfaces Ricas para WEB com jQuery e jQueryUI (User Interface)Evandro Klimpel Balmant
 
LPII_Aula_7-JQuery.pdf
LPII_Aula_7-JQuery.pdfLPII_Aula_7-JQuery.pdf
LPII_Aula_7-JQuery.pdfGabrielaMota46
 
Desenvolvendo com Dojo Toolkit
Desenvolvendo com Dojo ToolkitDesenvolvendo com Dojo Toolkit
Desenvolvendo com Dojo ToolkitFlávio Lisboa
 
Palestra / Efeitos Espetaculares Em Dhtml / SDD
Palestra / Efeitos Espetaculares Em Dhtml / SDDPalestra / Efeitos Espetaculares Em Dhtml / SDD
Palestra / Efeitos Espetaculares Em Dhtml / SDDhugodiasneto
 
Programando para programadores: Desafios na evolução de um Framework
Programando para programadores: Desafios na evolução de um FrameworkProgramando para programadores: Desafios na evolução de um Framework
Programando para programadores: Desafios na evolução de um FrameworkPablo Dall'Oglio
 
ODIG - Javascript, DOM Elements e jQuery
ODIG - Javascript, DOM Elements e jQueryODIG - Javascript, DOM Elements e jQuery
ODIG - Javascript, DOM Elements e jQueryMarketing Digital ODIG
 
Apresentação sobre MVVMC
Apresentação sobre MVVMCApresentação sobre MVVMC
Apresentação sobre MVVMCAlisson Agiani
 
Nadando em Dinheiro com jQuery
Nadando em Dinheiro com jQueryNadando em Dinheiro com jQuery
Nadando em Dinheiro com jQueryReinaldo Junior
 
Desenvolvendo aplicacoes mobile_com_html_css_
Desenvolvendo aplicacoes mobile_com_html_css_Desenvolvendo aplicacoes mobile_com_html_css_
Desenvolvendo aplicacoes mobile_com_html_css_Rodrigo Urubatan
 
Backbone.js nas trincheiras
Backbone.js nas trincheirasBackbone.js nas trincheiras
Backbone.js nas trincheirasLambda 3
 
TDC 2015 - Rails & Javascript: faça isso direito
TDC 2015 - Rails & Javascript: faça isso direitoTDC 2015 - Rails & Javascript: faça isso direito
TDC 2015 - Rails & Javascript: faça isso direitoCezinha Anjos
 
LambdaDay: Backbone.js
LambdaDay: Backbone.jsLambdaDay: Backbone.js
LambdaDay: Backbone.jsGiovanni Bassi
 
Automatização Desenvolvimento Web com Gulp
Automatização Desenvolvimento Web com GulpAutomatização Desenvolvimento Web com Gulp
Automatização Desenvolvimento Web com GulpRicardo Costa
 
Conexão Java 2006: Introdução ao Ajax
Conexão Java 2006: Introdução ao AjaxConexão Java 2006: Introdução ao Ajax
Conexão Java 2006: Introdução ao AjaxHelder da Rocha
 

Ähnlich wie O que é jQuery e para que serve (20)

Interfaces Ricas para WEB com jQuery e jQueryUI (User Interface)
Interfaces Ricas para WEB com jQuery e jQueryUI (User Interface)Interfaces Ricas para WEB com jQuery e jQueryUI (User Interface)
Interfaces Ricas para WEB com jQuery e jQueryUI (User Interface)
 
Java script aula 07 - j-query
Java script   aula 07 - j-queryJava script   aula 07 - j-query
Java script aula 07 - j-query
 
Programação Web com jQuery
Programação Web com jQueryProgramação Web com jQuery
Programação Web com jQuery
 
LPII_Aula_7-JQuery.pdf
LPII_Aula_7-JQuery.pdfLPII_Aula_7-JQuery.pdf
LPII_Aula_7-JQuery.pdf
 
Desenvolvendo com Dojo Toolkit
Desenvolvendo com Dojo ToolkitDesenvolvendo com Dojo Toolkit
Desenvolvendo com Dojo Toolkit
 
Palestra / Efeitos Espetaculares Em Dhtml / SDD
Palestra / Efeitos Espetaculares Em Dhtml / SDDPalestra / Efeitos Espetaculares Em Dhtml / SDD
Palestra / Efeitos Espetaculares Em Dhtml / SDD
 
Web 3.0
Web 3.0Web 3.0
Web 3.0
 
Programando para programadores: Desafios na evolução de um Framework
Programando para programadores: Desafios na evolução de um FrameworkProgramando para programadores: Desafios na evolução de um Framework
Programando para programadores: Desafios na evolução de um Framework
 
JQuery
JQueryJQuery
JQuery
 
ODIG - Javascript, DOM Elements e jQuery
ODIG - Javascript, DOM Elements e jQueryODIG - Javascript, DOM Elements e jQuery
ODIG - Javascript, DOM Elements e jQuery
 
Apresentação sobre MVVMC
Apresentação sobre MVVMCApresentação sobre MVVMC
Apresentação sobre MVVMC
 
Java script aula 09 - JQuery
Java script   aula 09 - JQueryJava script   aula 09 - JQuery
Java script aula 09 - JQuery
 
Nadando em Dinheiro com jQuery
Nadando em Dinheiro com jQueryNadando em Dinheiro com jQuery
Nadando em Dinheiro com jQuery
 
Desenvolvendo aplicacoes mobile_com_html_css_
Desenvolvendo aplicacoes mobile_com_html_css_Desenvolvendo aplicacoes mobile_com_html_css_
Desenvolvendo aplicacoes mobile_com_html_css_
 
Backbone.js nas trincheiras
Backbone.js nas trincheirasBackbone.js nas trincheiras
Backbone.js nas trincheiras
 
TDC 2015 - Rails & Javascript: faça isso direito
TDC 2015 - Rails & Javascript: faça isso direitoTDC 2015 - Rails & Javascript: faça isso direito
TDC 2015 - Rails & Javascript: faça isso direito
 
LambdaDay: Backbone.js
LambdaDay: Backbone.jsLambdaDay: Backbone.js
LambdaDay: Backbone.js
 
Quick Form DataBase (QFDB)
Quick Form DataBase (QFDB)Quick Form DataBase (QFDB)
Quick Form DataBase (QFDB)
 
Automatização Desenvolvimento Web com Gulp
Automatização Desenvolvimento Web com GulpAutomatização Desenvolvimento Web com Gulp
Automatização Desenvolvimento Web com Gulp
 
Conexão Java 2006: Introdução ao Ajax
Conexão Java 2006: Introdução ao AjaxConexão Java 2006: Introdução ao Ajax
Conexão Java 2006: Introdução ao Ajax
 

O que é jQuery e para que serve

  • 2. Definição • Criada por John Resig em 2006; • OpenSource (MIT, GPL) – Massachusetts Institute of Technology – GNU General Public Licence – Uso Pessoal e Comercial; • Framework JavaScript; • Focado na simplicidade de escrita não exigindo conhecimento de programação;
  • 3. Para que serve • Adicionar interatividade e dinamismo às páginas web; • Criar scripts que visem a incrementar: – Usabilidade – Acessibilidade – Design • Enriquecer a experiência do usuário, de forma progressiva e não-obstrutiva; – Javascript não obstrutivo diz respeito a scripts que, ao serem desabilitados, não interferem no funcionamento da página.
  • 4. Do que jQuery é capaz • Adicionar efeitos visuais e animações; • Acessar e manipular o DOM; – Document Object Model • Buscar informações no servidor sem necessidade de recarregar a página; • Prover interatividade; • Alterar conteúdo; • Modificar apresentação e estilização; • Simplificar tarefas específicas de JavaScript;
  • 5. Compatibilidade nos Navegadores • Firefox 2.0+ • Internet Explorer 6+ • Safari 3+ • Opera 10.6+ • Chrome 8+
  • 7. Muda o jeito de escrever JavaScript var tables = document.getElementsByTagName('table'); for (var t = 0; t < tables.length; t++) { var rows = tables[t].getElementsByTagName('tr'); for (var i = 1; i < rows.length; i += 2) { if (!/(^|s)odd(s|$)/.test(rows[i].className)) { rows[i].className += ' odd'; } } }
  • 8. Muda o jeito de escrever JavaScript $('table tr:nth-child(odd)').addClass('odd');
  • 11. Exemplos $("div").hide(); //efeito $("button").remove(); //DOM $("form").submit(); //evento $("p").addClass("especial"); //DOM $("span").show("fast"); //animação
  • 12. <!DOCTYPE html><html><body> <ul> <li><a>home</a></li> <li><a>about</a></li> </ul> </body></html>
  • 13. <!DOCTYPE html><html><body> <ul> <li><a>home</a></li> <li><a>about</a></li> </ul> <script src="jquery.js"></script> </body></html>
  • 14. <!DOCTYPE html><html><body> <ul> <li><a>home</a></li> <li><a>about</a></li> </ul> <script src="jquery.js"></script><script> jQuery('ul'); </script> </body></html>
  • 15. <!DOCTYPE html><html><body> <ul id="nav"> <li><a>home</a></li> <li><a>about</a></li> </ul> <script src="jquery.js"></script><script> jQuery('ul').attr('id', 'nav'); </script> </body></html>
  • 16. <!DOCTYPE html><html><body> <ul id="nav"> <li><a>home</a></li> <li><a>about</a></li> </ul> <script src="jquery.js"></script><script> jQuery('ul').attr('id', 'nav'); jQuery('#nav li'); </script> </body></html>
  • 17. <!DOCTYPE html><html><body> <ul id="nav"> <li class="item"><a>home</a></li> <li class="item"><a>about</a></li> </ul> <script src="jquery.js"></script><script> jQuery('ul').attr('id', 'nav'); jQuery('#nav li').addClass('item'); </script> </body></html>
  • 18. <!DOCTYPE html><html><body> <ul id="nav"> <li class="item"><a>home</a></li> <li class="item"><a>about</a></li> </ul> <script src="jquery.js"></script><script> jQuery('ul').attr('id', 'nav'); jQuery('#nav li').addClass('item'); jQuery('#nav a'); </script> </body></html>
  • 19. <!DOCTYPE html><html><body> <ul id="nav"> <li class="item"><a>home</a></li> <li class="item"><a>about</a></li> </ul> <script src="jquery.js"></script><script> jQuery('ul').attr('id', 'nav'); jQuery('#nav li').addClass('item'); jQuery('#nav a').each(function(){ jQuery(this); }); </script> </body></html>
  • 20. <!DOCTYPE html><html><body> <ul id="nav"> <li class="item"><a>home</a></li> <li class="item"><a>about</a></li> </ul> <script src="jquery.js"></script><script> jQuery('ul').attr('id', 'nav'); jQuery('#nav li').addClass('item'); jQuery('#nav a').each(function(){ jQuery(this); }); </script> </body></html>
  • 21. <!DOCTYPE html><html><body> <ul id="nav"> <li class="item"><a href="/home">home</a></li> <li class="item"><a href="/about">about</a></li> </ul> <script src="jquery.js"></script><script> jQuery('ul').attr('id', 'nav'); jQuery('#nav li').addClass('item'); jQuery('#nav a').each(function(){ jQuery(this).attr('href', '/' + jQuery(this).text()); }); </script> </body></html>
  • 22. <!DOCTYPE html><html><body> <ul id="nav"> <li class="item"><a href="/home">home</a></li> <li class="item"><a href="/about">about</a></li> </ul> <script src="jquery.js"></script><script> $('ul').attr('id', 'nav'); $('#nav li').addClass('item'); $('#nav a').each(function(){ $(this).attr('href', '/' + $(this).text()); }); </script> </body></html>
  • 23. <!DOCTYPE html><html><body> <ul id="nav"> <li class="item"><a href="/home">home</a></li> <li class="item"><a href="/about">about</a></li> </ul> <script src="jquery.js"></script><script> $('ul').attr('id', 'nav'); $('#nav li').addClass('item').find('a').each(function(){ $ (this).attr('href', '/' + $ (this).text()); }); </script> </body></html>
  • 24. Chaining (Acorrentar) $("p").addClass("especial") .css("color", "red") .append(“Olá Mundo!") .show("slow"); • A maioria dos métodos são chainable (possuem capacidade de se acorrentarem) • Isso acontece porque, por padronização, todos os métodos devem retornar o próprio elemento. • A mesma padronização é aconselhada aos programadores ao criarem plug-ins.
  • 25. Vantagens • Utiliza seletores CSS para localizar elementos da estrutura de marcação HTML da página; • Possui arquitetura compatível com instalação de plug-ins e extensões em geral; • Possuir um repositório com inúmeros plug-ins disponíveis; • É indiferente às inconsistências de renderização entre navegadores; • Não há necessidade de construção de loops para localização de elementos no documento; • Admite programação encadeada, ou seja, cada método retorna um objeto; • É extensível, pois admite criação e inserção de novas funcionalidades; • Possui uma ótima documentação; • Leve, a versão compactada (e com Gzip) tem 90kb de tamanho; • Não obstrutivo
  • 26. Desvantagens • Aplicações precisam de um servidor para criar e gerenciar sessões; • Aplicações precisam de outro aplicativo para fornecer os dados, escrito em outra linguagem; • Em computadores robustos, aplicações maiores podem se tornar mais lentas; • É difícil proteger o código-fonte; • Pode ser difícil depurar, especialmente se houverem conflitos entre scripts;
  • 27. FrozenSpots • Construtor $ (cifrão, dólar) – referência para o objeto jQuery; – é responsável por identificar o elemento passado e chamar o respectivo método; – Qualquer outro “nome” pode ser usado para representar o objeto, sendo o $ (cifrão, dólar) o default. • Todas as funcionalidades do jQuery possuem comportamento default.
  • 28. HotSpots • Os plugins (componentes) que podem ser acoplados junto ao jQuery. • O Complemento jQuery UI – Oferece funcionalidades de interação com o usuário. • Todos os métodos possuem parâmetros para modificar ou configurar sua funcionalidade.
  • 29. Quem usa jQuery? • Atualmente mais de 19 milhões de sites utilizam jQuery; Fonte: http://trendspro.builtwith.com
  • 30. OBRIGADO! Bruno Cunha E-mail: contato@brunocunha.net.br Portfólio: http://brunocunha.net.br Twitter http://twitter.com/obrunocunha