SlideShare a Scribd company logo
1 of 68
Download to read offline
Introdução



Gustavo Dutra
void bogosort(int size, int *array) {
     int i, j;
     for (i = 1; i <= size; i++)
          if (i == size)
               return;
          else if (array[i-1] > array[i])
               break;
     for (i = 0; i < size; i++) {
          j = rand() % size;
          if (array[i] != array[j]) {
               int aux = array[i];


          }
               array[i] = array[j];
               array[j] = aux;              C
     }
     bogosort(size, array);
} Adaptado de
  http://pt.wikipedia.org/wiki/Bogosort#C
from random import shuffle

def bogosort(seq):
    while not all(x<=y for x,y in zip(seq,seq[1:])):
        shuffle(seq)
    return seq
Adaptado de
http://pt.wikipedia.org/wiki/Bogosort#Python




              Python
wtf?
DOM - Data Object Model
               Define um padrão para acessar documentos

      DOM Core                   Qualquer documento

      DOM XML                     XML

      DOM HTML                   HTML



                                          Padrão do quê?

 OBJETOS                MÉTODOS                 PROPRIEDADES


Fonte: http://www.w3schools.com/HTMLDOM/dom_intro.asp
HTML DOM
var el = document.getElementById("myDiv");
el.parentNode.removeChild(el);
HTML DOM
var el = document.getElementById("myDiv");
el.parentNode.removeChild(el);



jQuery
$("#myDiv").remove();


                  HTML DOM SUCKS!
<input type="text" name="start_date"
           onchange="validDate(this);" />

      <input type="text" name="end_date"
                 onchange="validDate(this);" />
<input type="text" name="start_date"
           onchange="validDate(this);" />

      <input type="text" name="end_date"
                 onchange="validDate(this);" />


  E se o JavaScript não estiver habilitado?

         E se mudar o nome da função validDate ?

    E se for adicionado mais parâmetros?
<input type="text" name="start_date"
           onchange="validDate(this);" />

      <input type="text" name="end_date"
                 onchange="validDate(this);" />


  E se o JavaScript não estiver habilitado?

         E se mudar o nome da função validDate ?

    E se for adicionado mais parâmetros?


       MANDA O ESTAGIÁRIO!
<input type="text" name="start_date" class="date" />
<input type="text" name="end_date" class="date" />
<input type="text" name="start_date" class="date" />
 <input type="text" name="end_date" class="date" />

window.onload = function() {
   var inputs = document.getElementsByTagName("input");
   for (var i = 0; i < inputs.length; i++) {
     if (inputs.[i].className == 'date') {
       inputs[i].onchange = function() {
         validDate(this);
       }
     }
   }
}
function validDate(element) {
  //...
}
Javascript Não-Obstrusivo
Javascript Não-Obstrusivo
      Graceful Degradation
           Progressive Enhancement
Javascript Não-Obstrusivo
        Graceful Degradation
             Progressive Enhancement

Não suponha, VERIFIQUE!
Javascript Não-Obstrusivo
        Graceful Degradation
             Progressive Enhancement

Não suponha, VERIFIQUE!

         Valide em mais de um browser!
Javascript Não-Obstrusivo
          Graceful Degradation
               Progressive Enhancement

Não suponha, VERIFIQUE!

           Valide em mais de um browser!

   Mantenha os scripts o mais seguro
             POSSÍVEL
DOM SUCKS
            +
Javascript Não-Obstrusivo
DOM SUCKS
            +
Javascript Não-Obstrusivo
         originaram




   jQuery
jQuery
 Core
jQuery
 Core

     Ajax
Attributes
             jQuery
              Core

                  Ajax
Manipulation

Attributes
             jQuery
              Core

                  Ajax
Manipulation

Attributes
             jQuery
              Core    Effects


                  Ajax
Manipulation

Attributes
             jQuery
              Core    Effects


                  Ajax
  Traversing
Manipulation

Attributes
             jQuery
              Core    Effects
 Selectors

                  Ajax
  Traversing
Manipulation

Attributes
             jQuery
              Core      Effects
 Selectors
             Events
                      Ajax
  Traversing
Manipulation

Attributes    CSS
             jQuery
              Core      Effects
 Selectors
             Events
                      Ajax
  Traversing
Manipulation

Attributes    CSS
             jQuery
              Core      Effects
 Selectors
                        Internals
             Events
                      Ajax
  Traversing
Manipulation

Attributes     CSS
              jQuery
Utilities
               Core      Effects
  Selectors
                         Internals
              Events
                       Ajax
  Traversing
Manipulation

Attributes     CSS
                          jQuery UI
              jQuery
Utilities
               Core      Effects
  Selectors
                         Internals
              Events
                       Ajax
  Traversing
Manipulation
                       Plugins
Attributes     CSS
                          jQuery UI
              jQuery
Utilities
               Core      Effects
  Selectors
                         Internals
              Events
                       Ajax
  Traversing
Lets
Begin
((typeof jQuery) == "function")


 ((typeof $) == "function")



   jQuery === $
Jaspion = $.noConflict()


 ((typeof $) == "undefined")


jQuery === Jaspion
window.onload = function() {
  // ...
}
$(document).ready(function() {
  // ...
});

$(function() {
  // ...
                   OU
});
S $("div")
                                          body
E             $("#id")

L $(".class")                   ul               div#id

E         $("ul li")

  $("ul li:not(li.active)")          li           div.class
T        $("li.active ~ li")
O $("li:contains(Home)")         li.active

R $("ul li:first,ul li:last")
E $("div#id > div")                  li


S
S $("div")
                                          body
E             $("#id")

L $(".class")                   ul               div#id

E         $("ul li")

  $("ul li:not(li.active)")          li           div.class
T        $("li.active ~ li")
O $("li:contains(Home)")         li.active

R $("ul li:first,ul li:last")
E $("div#id > div")                  li


S
S $("div")
                                          body
E             $("#id")

L $(".class")                   ul               div#id

E         $("ul li")

  $("ul li:not(li.active)")          li           div.class
T        $("li.active ~ li")
O $("li:contains(Home)")         li.active

R $("ul li:first,ul li:last")
E $("div#id > div")                  li


S
S $("div")
                                          body
E             $("#id")

L $(".class")                   ul               div#id

E         $("ul li")

  $("ul li:not(li.active)")          li           div.class
T        $("li.active ~ li")
O $("li:contains(Home)")         li.active

R $("ul li:first,ul li:last")
E $("div#id > div")                  li


S
S $("div")
                                          body
E             $("#id")

L $(".class")                   ul               div#id

E         $("ul li")

  $("ul li:not(li.active)")          li           div.class
T        $("li.active ~ li")
O $("li:contains(Home)")         li.active

R $("ul li:first,ul li:last")
E $("div#id > div")                  li


S
S $("div")
                                          body
E             $("#id")

L $(".class")                   ul               div#id

E         $("ul li")

  $("ul li:not(li.active)")          li           div.class
T        $("li.active ~ li")
O $("li:contains(Home)")         li.active

R $("ul li:first,ul li:last")
E $("div#id > div")                  li


S
S $("div")
                                          body
E             $("#id")

L $(".class")                   ul               div#id

E         $("ul li")

  $("ul li:not(li.active)")          li           div.class
T        $("li.active ~ li")
O $("li:contains(Home)")         li.active

R $("ul li:first,ul li:last")
E $("div#id > div")                  li


S
S $("div")
                                          body
E             $("#id")

L $(".class")                   ul               div#id

E         $("ul li")

  $("ul li:not(li.active)")          li           div.class
T        $("li.active ~ li")
O $("li:contains(Home)")         li.active

R $("ul li:first,ul li:last")
E $("div#id > div")                  li


S
S $("div")
                                          body
E             $("#id")

L $(".class")                   ul               div#id

E         $("ul li")

  $("ul li:not(li.active)")          li           div.class
T        $("li.active ~ li")
O $("li:contains(Home)")         li.active

R $("ul li:first,ul li:last")
E $("div#id > div")                  li


S
C   $("#myId li");
O
             var el = $("#myId");
N
             $("li", el);
T
E $("li", "#myId");
X
T    var el = getElementById("myId");
     $("li", el);
O
A
  $(...)
T
R
I
B
U
T
O
S
A
  $(...) .addClass("css-class")
T        .removeClass("css-class")
R        .toggleClass("css-class")
I
B
U
T
O
S
A
  $(...) .addClass("css-class")
T        .removeClass("css-class")
R        .toggleClass("css-class")
         .html()
I        .html("innerHTML")
B
U
T
O
S
A
  $(...) .addClass("css-class")
T        .removeClass("css-class")
R        .toggleClass("css-class")
         .html()
I        .html("innerHTML")
B        .text()
U        .text("text")

T
O
S
A
  $(...) .addClass("css-class")
T        .removeClass("css-class")
R        .toggleClass("css-class")
         .html()
I        .html("innerHTML")
B        .text()
U        .text("text")
         .attr("id")
T        .attr("id", "new-id")
O
S
A
  $(...) .addClass("css-class")
T        .removeClass("css-class")
R        .toggleClass("css-class")
         .html()
I        .html("innerHTML")
B        .text()
U        .text("text")
         .attr("id")
T        .attr("id", "new-id")
O        .val()
S        .val("input value");
A   $(...)
T
R
A
V
E
S
S      .children()
A
R
A     $(...)
T
R
A
V
E
S   .children()
S                 .eq(0)
A
R
A     $(...)
T
R
A
V
E
S   .children()
    .eq(0)
S                 .next()
A
R
A     $(...)
T
R
A
V
E
S   .children()
    .eq(0)
S   .next()       .prev()
A
R
A     $(...)
T
R
A
V
E
S   .children()
    .eq(0)
S   .next()       .find(...)
A   .prev()
R
A     $(...)
T
R
A
V
E
S   .children()
    .eq(0)
S   .next()       .end()
A   .prev()
    .find(...)
R
M
A
                $(...)
N
I                        .prepend()
P
U   .append()
L
A
R
M
A
N            .before()
I
    $(...)
P
U            .after()
L
A
R
M                       .wrap(...)
A
               $(...)
N
I
P    $(...)   .clone(...)       $(...)
U
L
A   .clone() cria elementos
     soltos do documento
R
.click(function(event) {
      // ...
E   });
V   .dblclick(function(event) {
      // ...
E   });
N   .blur(function(event) {
T     // ...
    });
O
    .keypress(function(event) {
S     // ...
    });
E
V   .hover(function(event) {
E    // mouseenter
N   },function(event) {
T    // mouseleave
O   });
S
.bind('click', function(event) {
      // ...
E   });
V   .trigger('click');
E   .triggerHandler('click');
N
T
O
S
.bind('click', function(event) {
      // ...
E   });
V   .trigger('click');
E   .triggerHandler('click');
N
T   .bind('myEv', function(event) {
      // ...
O   });
S   .trigger('myEv');
.show()
E
F                  .fadeOut()
E     .hide()
I
T             .slideDown()
O .fadeIn()
S                  .slideUp()
La pregunta?



http://GustavoDutra.com
mechamo@gustavodutra.com
@gustavotkg

More Related Content

What's hot (19)

Jqeury ajax plugins
Jqeury ajax pluginsJqeury ajax plugins
Jqeury ajax plugins
 
Jquery
JqueryJquery
Jquery
 
BVJS
BVJSBVJS
BVJS
 
Learning jQuery in 30 minutes
Learning jQuery in 30 minutesLearning jQuery in 30 minutes
Learning jQuery in 30 minutes
 
Jquery
JqueryJquery
Jquery
 
Jquery introduction
Jquery introductionJquery introduction
Jquery introduction
 
The Dom Scripting Toolkit J Query
The Dom Scripting Toolkit J QueryThe Dom Scripting Toolkit J Query
The Dom Scripting Toolkit J Query
 
The jQuery Divide
The jQuery DivideThe jQuery Divide
The jQuery Divide
 
jQuery Rescue Adventure
jQuery Rescue AdventurejQuery Rescue Adventure
jQuery Rescue Adventure
 
Write Less Do More
Write Less Do MoreWrite Less Do More
Write Less Do More
 
jQuery
jQueryjQuery
jQuery
 
Introduction to jQuery
Introduction to jQueryIntroduction to jQuery
Introduction to jQuery
 
J query training
J query trainingJ query training
J query training
 
Prototype & jQuery
Prototype & jQueryPrototype & jQuery
Prototype & jQuery
 
JQuery introduction
JQuery introductionJQuery introduction
JQuery introduction
 
jQuery from the very beginning
jQuery from the very beginningjQuery from the very beginning
jQuery from the very beginning
 
Dollar symbol
Dollar symbolDollar symbol
Dollar symbol
 
Jquery 3
Jquery 3Jquery 3
Jquery 3
 
jQuery%20on%20Rails%20Presentation
jQuery%20on%20Rails%20PresentationjQuery%20on%20Rails%20Presentation
jQuery%20on%20Rails%20Presentation
 

Viewers also liked

Unidade 2 malwares e ataques
Unidade 2  malwares e ataquesUnidade 2  malwares e ataques
Unidade 2 malwares e ataquesLeandro Almeida
 
Jinzora - Free your media - Renato Severo
Jinzora - Free your media - Renato SeveroJinzora - Free your media - Renato Severo
Jinzora - Free your media - Renato SeveroTchelinux
 
Aula 1 rede com packet tracer
Aula 1 rede com packet tracerAula 1 rede com packet tracer
Aula 1 rede com packet tracerArlimar Jacinto
 
Packet Tracer
Packet TracerPacket Tracer
Packet Tracerdanists
 
Diario de um sobrevivente livre - Abdala Cerqueira
Diario de um sobrevivente livre - Abdala CerqueiraDiario de um sobrevivente livre - Abdala Cerqueira
Diario de um sobrevivente livre - Abdala CerqueiraPotiLivre Sobrenome
 
Segurança cibernética e software livre - Lourival Araujo - TchêLinux Uruguaiana
Segurança cibernética e software livre - Lourival Araujo - TchêLinux UruguaianaSegurança cibernética e software livre - Lourival Araujo - TchêLinux Uruguaiana
Segurança cibernética e software livre - Lourival Araujo - TchêLinux UruguaianaTchelinux
 
Apresentacao institucional 4Linux
Apresentacao institucional 4LinuxApresentacao institucional 4Linux
Apresentacao institucional 4Linux4LinuxCursos
 
TI Verde, mais que teoria... Uma prática! - Jonas Casarin (FURG) / Julio Cesa...
TI Verde, mais que teoria... Uma prática! - Jonas Casarin (FURG) / Julio Cesa...TI Verde, mais que teoria... Uma prática! - Jonas Casarin (FURG) / Julio Cesa...
TI Verde, mais que teoria... Uma prática! - Jonas Casarin (FURG) / Julio Cesa...Tchelinux
 
Introdução ao mongodb - José Inoue - TchêLinux Uruguaiana
Introdução ao mongodb - José Inoue - TchêLinux UruguaianaIntrodução ao mongodb - José Inoue - TchêLinux Uruguaiana
Introdução ao mongodb - José Inoue - TchêLinux UruguaianaTchelinux
 
Zabbix + GLPI: Como estas duas ferramentas podem otimizar seus recursos
Zabbix + GLPI: Como estas duas ferramentas  podem otimizar seus recursosZabbix + GLPI: Como estas duas ferramentas  podem otimizar seus recursos
Zabbix + GLPI: Como estas duas ferramentas podem otimizar seus recursosJose Ferronato
 
Clonezilla seu amigo vai salvar seus dados do perigo
Clonezilla seu amigo vai salvar seus dados do perigoClonezilla seu amigo vai salvar seus dados do perigo
Clonezilla seu amigo vai salvar seus dados do perigoTchelinux
 
Monitoração de Infraestrutura e Serviços - Sensu
Monitoração de Infraestrutura e Serviços - SensuMonitoração de Infraestrutura e Serviços - Sensu
Monitoração de Infraestrutura e Serviços - SensuRoberto Scudeller
 
Inteligência Operacional utilizando a solução Elastic.
Inteligência Operacional utilizando a solução Elastic.Inteligência Operacional utilizando a solução Elastic.
Inteligência Operacional utilizando a solução Elastic.4LinuxCursos
 
Espelhamento de discos RAID1 - Thiago Finardi - TchêLinux Uruguaiana
Espelhamento de discos RAID1 - Thiago Finardi - TchêLinux UruguaianaEspelhamento de discos RAID1 - Thiago Finardi - TchêLinux Uruguaiana
Espelhamento de discos RAID1 - Thiago Finardi - TchêLinux UruguaianaTchelinux
 
Apresentacao institucional 4Linux
Apresentacao institucional 4LinuxApresentacao institucional 4Linux
Apresentacao institucional 4Linux4LinuxCursos
 
Desenvolvimento de um Sistema de Gestão Acadêmica com Software Livre - Rodrig...
Desenvolvimento de um Sistema de Gestão Acadêmica com Software Livre - Rodrig...Desenvolvimento de um Sistema de Gestão Acadêmica com Software Livre - Rodrig...
Desenvolvimento de um Sistema de Gestão Acadêmica com Software Livre - Rodrig...Tchelinux
 

Viewers also liked (20)

Unidade 2 malwares e ataques
Unidade 2  malwares e ataquesUnidade 2  malwares e ataques
Unidade 2 malwares e ataques
 
Jinzora - Free your media - Renato Severo
Jinzora - Free your media - Renato SeveroJinzora - Free your media - Renato Severo
Jinzora - Free your media - Renato Severo
 
Aula 1 rede com packet tracer
Aula 1 rede com packet tracerAula 1 rede com packet tracer
Aula 1 rede com packet tracer
 
Open-AudIT
Open-AudITOpen-AudIT
Open-AudIT
 
Aula 2 de software de aplicação
Aula 2 de software de aplicaçãoAula 2 de software de aplicação
Aula 2 de software de aplicação
 
Packet Tracer
Packet TracerPacket Tracer
Packet Tracer
 
Diario de um sobrevivente livre - Abdala Cerqueira
Diario de um sobrevivente livre - Abdala CerqueiraDiario de um sobrevivente livre - Abdala Cerqueira
Diario de um sobrevivente livre - Abdala Cerqueira
 
Segurança cibernética e software livre - Lourival Araujo - TchêLinux Uruguaiana
Segurança cibernética e software livre - Lourival Araujo - TchêLinux UruguaianaSegurança cibernética e software livre - Lourival Araujo - TchêLinux Uruguaiana
Segurança cibernética e software livre - Lourival Araujo - TchêLinux Uruguaiana
 
Apresentacao institucional 4Linux
Apresentacao institucional 4LinuxApresentacao institucional 4Linux
Apresentacao institucional 4Linux
 
TI Verde, mais que teoria... Uma prática! - Jonas Casarin (FURG) / Julio Cesa...
TI Verde, mais que teoria... Uma prática! - Jonas Casarin (FURG) / Julio Cesa...TI Verde, mais que teoria... Uma prática! - Jonas Casarin (FURG) / Julio Cesa...
TI Verde, mais que teoria... Uma prática! - Jonas Casarin (FURG) / Julio Cesa...
 
Introdução ao mongodb - José Inoue - TchêLinux Uruguaiana
Introdução ao mongodb - José Inoue - TchêLinux UruguaianaIntrodução ao mongodb - José Inoue - TchêLinux Uruguaiana
Introdução ao mongodb - José Inoue - TchêLinux Uruguaiana
 
Zabbix + GLPI: Como estas duas ferramentas podem otimizar seus recursos
Zabbix + GLPI: Como estas duas ferramentas  podem otimizar seus recursosZabbix + GLPI: Como estas duas ferramentas  podem otimizar seus recursos
Zabbix + GLPI: Como estas duas ferramentas podem otimizar seus recursos
 
Clonezilla seu amigo vai salvar seus dados do perigo
Clonezilla seu amigo vai salvar seus dados do perigoClonezilla seu amigo vai salvar seus dados do perigo
Clonezilla seu amigo vai salvar seus dados do perigo
 
Monitoração de Infraestrutura e Serviços - Sensu
Monitoração de Infraestrutura e Serviços - SensuMonitoração de Infraestrutura e Serviços - Sensu
Monitoração de Infraestrutura e Serviços - Sensu
 
Inteligência Operacional utilizando a solução Elastic.
Inteligência Operacional utilizando a solução Elastic.Inteligência Operacional utilizando a solução Elastic.
Inteligência Operacional utilizando a solução Elastic.
 
Roteiro samba
Roteiro sambaRoteiro samba
Roteiro samba
 
Espelhamento de discos RAID1 - Thiago Finardi - TchêLinux Uruguaiana
Espelhamento de discos RAID1 - Thiago Finardi - TchêLinux UruguaianaEspelhamento de discos RAID1 - Thiago Finardi - TchêLinux Uruguaiana
Espelhamento de discos RAID1 - Thiago Finardi - TchêLinux Uruguaiana
 
Apresentacao institucional 4Linux
Apresentacao institucional 4LinuxApresentacao institucional 4Linux
Apresentacao institucional 4Linux
 
Desenvolvimento de um Sistema de Gestão Acadêmica com Software Livre - Rodrig...
Desenvolvimento de um Sistema de Gestão Acadêmica com Software Livre - Rodrig...Desenvolvimento de um Sistema de Gestão Acadêmica com Software Livre - Rodrig...
Desenvolvimento de um Sistema de Gestão Acadêmica com Software Livre - Rodrig...
 
Aula 1 - Sistema de Informação
Aula 1 - Sistema de InformaçãoAula 1 - Sistema de Informação
Aula 1 - Sistema de Informação
 

Similar to JQuery do dia-a-dia Gustavo Dutra

Unobtrusive javascript with jQuery
Unobtrusive javascript with jQueryUnobtrusive javascript with jQuery
Unobtrusive javascript with jQueryAngel Ruiz
 
Introduction to jQuery
Introduction to jQueryIntroduction to jQuery
Introduction to jQueryGunjan Kumar
 
jQuery - 10 Time-Savers You (Maybe) Don't Know
jQuery - 10 Time-Savers You (Maybe) Don't KnowjQuery - 10 Time-Savers You (Maybe) Don't Know
jQuery - 10 Time-Savers You (Maybe) Don't Knowgirish82
 
A Rich Web experience with jQuery, Ajax and .NET
A Rich Web experience with jQuery, Ajax and .NETA Rich Web experience with jQuery, Ajax and .NET
A Rich Web experience with jQuery, Ajax and .NETJames Johnson
 
Introduction to jQuery - Barcamp London 9
Introduction to jQuery - Barcamp London 9Introduction to jQuery - Barcamp London 9
Introduction to jQuery - Barcamp London 9Jack Franklin
 
Taming that client side mess with Backbone.js
Taming that client side mess with Backbone.jsTaming that client side mess with Backbone.js
Taming that client side mess with Backbone.jsJarod Ferguson
 
Rails Presentation - Technology Books, Tech Conferences
 Rails Presentation - Technology Books, Tech Conferences Rails Presentation - Technology Books, Tech Conferences
Rails Presentation - Technology Books, Tech Conferencestutorialsruby
 
jQuery%20on%20Rails%20Presentation
jQuery%20on%20Rails%20PresentationjQuery%20on%20Rails%20Presentation
jQuery%20on%20Rails%20Presentationguestcf600a
 
JQuery-Tutorial" />
  JQuery-Tutorial" />  JQuery-Tutorial" />
JQuery-Tutorial" />tutorialsruby
 
jQuery: Tips, tricks and hints for better development and Performance
jQuery: Tips, tricks and hints for better development and PerformancejQuery: Tips, tricks and hints for better development and Performance
jQuery: Tips, tricks and hints for better development and PerformanceJonas De Smet
 
How to increase Performance of Web Application using JQuery
How to increase Performance of Web Application using JQueryHow to increase Performance of Web Application using JQuery
How to increase Performance of Web Application using JQuerykolkatageeks
 
Introduzione JQuery
Introduzione JQueryIntroduzione JQuery
Introduzione JQueryorestJump
 
Zepto.js, a jQuery-compatible mobile JavaScript framework in 2K
Zepto.js, a jQuery-compatible mobile JavaScript framework in 2KZepto.js, a jQuery-compatible mobile JavaScript framework in 2K
Zepto.js, a jQuery-compatible mobile JavaScript framework in 2KThomas Fuchs
 
Mastering Java Bytecode With ASM - 33rd degree, 2012
Mastering Java Bytecode With ASM - 33rd degree, 2012Mastering Java Bytecode With ASM - 33rd degree, 2012
Mastering Java Bytecode With ASM - 33rd degree, 2012Anton Arhipov
 
jQuery Foot-Gun Features
jQuery Foot-Gun FeaturesjQuery Foot-Gun Features
jQuery Foot-Gun Featuresdmethvin
 

Similar to JQuery do dia-a-dia Gustavo Dutra (20)

Unobtrusive javascript with jQuery
Unobtrusive javascript with jQueryUnobtrusive javascript with jQuery
Unobtrusive javascript with jQuery
 
Hooks WCSD12
Hooks WCSD12Hooks WCSD12
Hooks WCSD12
 
Introduction to jQuery
Introduction to jQueryIntroduction to jQuery
Introduction to jQuery
 
jQuery - 10 Time-Savers You (Maybe) Don't Know
jQuery - 10 Time-Savers You (Maybe) Don't KnowjQuery - 10 Time-Savers You (Maybe) Don't Know
jQuery - 10 Time-Savers You (Maybe) Don't Know
 
jQuery introduction
jQuery introductionjQuery introduction
jQuery introduction
 
jQuery Presentasion
jQuery PresentasionjQuery Presentasion
jQuery Presentasion
 
A Rich Web experience with jQuery, Ajax and .NET
A Rich Web experience with jQuery, Ajax and .NETA Rich Web experience with jQuery, Ajax and .NET
A Rich Web experience with jQuery, Ajax and .NET
 
Introduction to jQuery - Barcamp London 9
Introduction to jQuery - Barcamp London 9Introduction to jQuery - Barcamp London 9
Introduction to jQuery - Barcamp London 9
 
Taming that client side mess with Backbone.js
Taming that client side mess with Backbone.jsTaming that client side mess with Backbone.js
Taming that client side mess with Backbone.js
 
Rails Presentation - Technology Books, Tech Conferences
 Rails Presentation - Technology Books, Tech Conferences Rails Presentation - Technology Books, Tech Conferences
Rails Presentation - Technology Books, Tech Conferences
 
jQuery%20on%20Rails%20Presentation
jQuery%20on%20Rails%20PresentationjQuery%20on%20Rails%20Presentation
jQuery%20on%20Rails%20Presentation
 
JQuery-Tutorial" />
  JQuery-Tutorial" />  JQuery-Tutorial" />
JQuery-Tutorial" />
 
JQuery
JQueryJQuery
JQuery
 
jQuery: Tips, tricks and hints for better development and Performance
jQuery: Tips, tricks and hints for better development and PerformancejQuery: Tips, tricks and hints for better development and Performance
jQuery: Tips, tricks and hints for better development and Performance
 
How to increase Performance of Web Application using JQuery
How to increase Performance of Web Application using JQueryHow to increase Performance of Web Application using JQuery
How to increase Performance of Web Application using JQuery
 
Introduzione JQuery
Introduzione JQueryIntroduzione JQuery
Introduzione JQuery
 
Zepto.js, a jQuery-compatible mobile JavaScript framework in 2K
Zepto.js, a jQuery-compatible mobile JavaScript framework in 2KZepto.js, a jQuery-compatible mobile JavaScript framework in 2K
Zepto.js, a jQuery-compatible mobile JavaScript framework in 2K
 
Mastering Java Bytecode With ASM - 33rd degree, 2012
Mastering Java Bytecode With ASM - 33rd degree, 2012Mastering Java Bytecode With ASM - 33rd degree, 2012
Mastering Java Bytecode With ASM - 33rd degree, 2012
 
jQuery Foot-Gun Features
jQuery Foot-Gun FeaturesjQuery Foot-Gun Features
jQuery Foot-Gun Features
 
jQuery UI and Plugins
jQuery UI and PluginsjQuery UI and Plugins
jQuery UI and Plugins
 

More from Tchelinux

Do Zero ao YouTube em menos de 10 softwares livres - Vinícius Alves Hax - Tch...
Do Zero ao YouTube em menos de 10 softwares livres - Vinícius Alves Hax - Tch...Do Zero ao YouTube em menos de 10 softwares livres - Vinícius Alves Hax - Tch...
Do Zero ao YouTube em menos de 10 softwares livres - Vinícius Alves Hax - Tch...Tchelinux
 
Insegurança na Internet - Diego Luiz Silva da Costa - Tchelinux 2019 Rio Grande
Insegurança na Internet - Diego Luiz Silva da Costa - Tchelinux 2019 Rio GrandeInsegurança na Internet - Diego Luiz Silva da Costa - Tchelinux 2019 Rio Grande
Insegurança na Internet - Diego Luiz Silva da Costa - Tchelinux 2019 Rio GrandeTchelinux
 
Explorando Editores de Texto Open Source - Gabriel Prestes Ritta - Tchelinux ...
Explorando Editores de Texto Open Source - Gabriel Prestes Ritta - Tchelinux ...Explorando Editores de Texto Open Source - Gabriel Prestes Ritta - Tchelinux ...
Explorando Editores de Texto Open Source - Gabriel Prestes Ritta - Tchelinux ...Tchelinux
 
Desenvolvendo Jogos com PyGame - Jerônimo Medina Madruga - Tchelinux 2019 Rio...
Desenvolvendo Jogos com PyGame - Jerônimo Medina Madruga - Tchelinux 2019 Rio...Desenvolvendo Jogos com PyGame - Jerônimo Medina Madruga - Tchelinux 2019 Rio...
Desenvolvendo Jogos com PyGame - Jerônimo Medina Madruga - Tchelinux 2019 Rio...Tchelinux
 
Me formei. E agora? - Matheus Cezar - Tchelinux 2019 Rio Grande
Me formei. E agora? - Matheus Cezar - Tchelinux 2019 Rio GrandeMe formei. E agora? - Matheus Cezar - Tchelinux 2019 Rio Grande
Me formei. E agora? - Matheus Cezar - Tchelinux 2019 Rio GrandeTchelinux
 
APIs, REST e RESTful: O que os programadores precisam saber? - Marcos Echevar...
APIs, REST e RESTful: O que os programadores precisam saber? - Marcos Echevar...APIs, REST e RESTful: O que os programadores precisam saber? - Marcos Echevar...
APIs, REST e RESTful: O que os programadores precisam saber? - Marcos Echevar...Tchelinux
 
Shell Script: Seu melhor amigo na automatização de instalações e configuraçõe...
Shell Script: Seu melhor amigo na automatização de instalações e configuraçõe...Shell Script: Seu melhor amigo na automatização de instalações e configuraçõe...
Shell Script: Seu melhor amigo na automatização de instalações e configuraçõe...Tchelinux
 
WebRTC: Comunicação aberta em tempo real - Nelson Dutra Junior - Tchelinux 20...
WebRTC: Comunicação aberta em tempo real - Nelson Dutra Junior - Tchelinux 20...WebRTC: Comunicação aberta em tempo real - Nelson Dutra Junior - Tchelinux 20...
WebRTC: Comunicação aberta em tempo real - Nelson Dutra Junior - Tchelinux 20...Tchelinux
 
Introdução à programação funcional com Clojure - Victor Hechel Colares - Tche...
Introdução à programação funcional com Clojure - Victor Hechel Colares - Tche...Introdução à programação funcional com Clojure - Victor Hechel Colares - Tche...
Introdução à programação funcional com Clojure - Victor Hechel Colares - Tche...Tchelinux
 
Construindo um Data Warehouse - Vítor Resing Plentz - Tchelinux 2019 Rio Grande
Construindo um Data Warehouse - Vítor Resing Plentz - Tchelinux 2019 Rio GrandeConstruindo um Data Warehouse - Vítor Resing Plentz - Tchelinux 2019 Rio Grande
Construindo um Data Warehouse - Vítor Resing Plentz - Tchelinux 2019 Rio GrandeTchelinux
 
Bikeshedding - Márcio Josué Ramos Torres - Tchelinux 2019 Rio Grande
Bikeshedding - Márcio Josué Ramos Torres - Tchelinux 2019 Rio GrandeBikeshedding - Márcio Josué Ramos Torres - Tchelinux 2019 Rio Grande
Bikeshedding - Márcio Josué Ramos Torres - Tchelinux 2019 Rio GrandeTchelinux
 
Produção de textos com Latex - Samuel Francisco Ferrigo - Tchelinux Caxias do...
Produção de textos com Latex - Samuel Francisco Ferrigo - Tchelinux Caxias do...Produção de textos com Latex - Samuel Francisco Ferrigo - Tchelinux Caxias do...
Produção de textos com Latex - Samuel Francisco Ferrigo - Tchelinux Caxias do...Tchelinux
 
A tecnologia no futuro e nas mãos de quem ela estará - Jaqueline Trevizan, Ne...
A tecnologia no futuro e nas mãos de quem ela estará - Jaqueline Trevizan, Ne...A tecnologia no futuro e nas mãos de quem ela estará - Jaqueline Trevizan, Ne...
A tecnologia no futuro e nas mãos de quem ela estará - Jaqueline Trevizan, Ne...Tchelinux
 
oVirt uma solução de virtualização distribuída opensource - Daniel Lara - Tch...
oVirt uma solução de virtualização distribuída opensource - Daniel Lara - Tch...oVirt uma solução de virtualização distribuída opensource - Daniel Lara - Tch...
oVirt uma solução de virtualização distribuída opensource - Daniel Lara - Tch...Tchelinux
 
Sistemas Embarcados e Buildroot - Renato Severo - Tchelinux Caxias do Sul 2019
Sistemas Embarcados e Buildroot - Renato Severo - Tchelinux Caxias do Sul 2019Sistemas Embarcados e Buildroot - Renato Severo - Tchelinux Caxias do Sul 2019
Sistemas Embarcados e Buildroot - Renato Severo - Tchelinux Caxias do Sul 2019Tchelinux
 
Com que ônibus eu vou? Uma gentil introdução ao Python.
Com que ônibus eu vou? Uma gentil introdução ao Python.Com que ônibus eu vou? Uma gentil introdução ao Python.
Com que ônibus eu vou? Uma gentil introdução ao Python.Tchelinux
 
O TCC... um dia ele chega! (The beautiful and easy LaTeX way.
O TCC... um dia ele chega! (The beautiful and easy LaTeX way.O TCC... um dia ele chega! (The beautiful and easy LaTeX way.
O TCC... um dia ele chega! (The beautiful and easy LaTeX way.Tchelinux
 
Não deixe para testar depois o que você pode testar antes.
Não deixe para testar depois o que você pode testar antes. Não deixe para testar depois o que você pode testar antes.
Não deixe para testar depois o que você pode testar antes. Tchelinux
 
Desenvolvendo jogos com pygame
Desenvolvendo jogos com pygameDesenvolvendo jogos com pygame
Desenvolvendo jogos com pygameTchelinux
 
Essa câmera faz fotos muito boas, né?
Essa câmera faz fotos muito boas, né?Essa câmera faz fotos muito boas, né?
Essa câmera faz fotos muito boas, né?Tchelinux
 

More from Tchelinux (20)

Do Zero ao YouTube em menos de 10 softwares livres - Vinícius Alves Hax - Tch...
Do Zero ao YouTube em menos de 10 softwares livres - Vinícius Alves Hax - Tch...Do Zero ao YouTube em menos de 10 softwares livres - Vinícius Alves Hax - Tch...
Do Zero ao YouTube em menos de 10 softwares livres - Vinícius Alves Hax - Tch...
 
Insegurança na Internet - Diego Luiz Silva da Costa - Tchelinux 2019 Rio Grande
Insegurança na Internet - Diego Luiz Silva da Costa - Tchelinux 2019 Rio GrandeInsegurança na Internet - Diego Luiz Silva da Costa - Tchelinux 2019 Rio Grande
Insegurança na Internet - Diego Luiz Silva da Costa - Tchelinux 2019 Rio Grande
 
Explorando Editores de Texto Open Source - Gabriel Prestes Ritta - Tchelinux ...
Explorando Editores de Texto Open Source - Gabriel Prestes Ritta - Tchelinux ...Explorando Editores de Texto Open Source - Gabriel Prestes Ritta - Tchelinux ...
Explorando Editores de Texto Open Source - Gabriel Prestes Ritta - Tchelinux ...
 
Desenvolvendo Jogos com PyGame - Jerônimo Medina Madruga - Tchelinux 2019 Rio...
Desenvolvendo Jogos com PyGame - Jerônimo Medina Madruga - Tchelinux 2019 Rio...Desenvolvendo Jogos com PyGame - Jerônimo Medina Madruga - Tchelinux 2019 Rio...
Desenvolvendo Jogos com PyGame - Jerônimo Medina Madruga - Tchelinux 2019 Rio...
 
Me formei. E agora? - Matheus Cezar - Tchelinux 2019 Rio Grande
Me formei. E agora? - Matheus Cezar - Tchelinux 2019 Rio GrandeMe formei. E agora? - Matheus Cezar - Tchelinux 2019 Rio Grande
Me formei. E agora? - Matheus Cezar - Tchelinux 2019 Rio Grande
 
APIs, REST e RESTful: O que os programadores precisam saber? - Marcos Echevar...
APIs, REST e RESTful: O que os programadores precisam saber? - Marcos Echevar...APIs, REST e RESTful: O que os programadores precisam saber? - Marcos Echevar...
APIs, REST e RESTful: O que os programadores precisam saber? - Marcos Echevar...
 
Shell Script: Seu melhor amigo na automatização de instalações e configuraçõe...
Shell Script: Seu melhor amigo na automatização de instalações e configuraçõe...Shell Script: Seu melhor amigo na automatização de instalações e configuraçõe...
Shell Script: Seu melhor amigo na automatização de instalações e configuraçõe...
 
WebRTC: Comunicação aberta em tempo real - Nelson Dutra Junior - Tchelinux 20...
WebRTC: Comunicação aberta em tempo real - Nelson Dutra Junior - Tchelinux 20...WebRTC: Comunicação aberta em tempo real - Nelson Dutra Junior - Tchelinux 20...
WebRTC: Comunicação aberta em tempo real - Nelson Dutra Junior - Tchelinux 20...
 
Introdução à programação funcional com Clojure - Victor Hechel Colares - Tche...
Introdução à programação funcional com Clojure - Victor Hechel Colares - Tche...Introdução à programação funcional com Clojure - Victor Hechel Colares - Tche...
Introdução à programação funcional com Clojure - Victor Hechel Colares - Tche...
 
Construindo um Data Warehouse - Vítor Resing Plentz - Tchelinux 2019 Rio Grande
Construindo um Data Warehouse - Vítor Resing Plentz - Tchelinux 2019 Rio GrandeConstruindo um Data Warehouse - Vítor Resing Plentz - Tchelinux 2019 Rio Grande
Construindo um Data Warehouse - Vítor Resing Plentz - Tchelinux 2019 Rio Grande
 
Bikeshedding - Márcio Josué Ramos Torres - Tchelinux 2019 Rio Grande
Bikeshedding - Márcio Josué Ramos Torres - Tchelinux 2019 Rio GrandeBikeshedding - Márcio Josué Ramos Torres - Tchelinux 2019 Rio Grande
Bikeshedding - Márcio Josué Ramos Torres - Tchelinux 2019 Rio Grande
 
Produção de textos com Latex - Samuel Francisco Ferrigo - Tchelinux Caxias do...
Produção de textos com Latex - Samuel Francisco Ferrigo - Tchelinux Caxias do...Produção de textos com Latex - Samuel Francisco Ferrigo - Tchelinux Caxias do...
Produção de textos com Latex - Samuel Francisco Ferrigo - Tchelinux Caxias do...
 
A tecnologia no futuro e nas mãos de quem ela estará - Jaqueline Trevizan, Ne...
A tecnologia no futuro e nas mãos de quem ela estará - Jaqueline Trevizan, Ne...A tecnologia no futuro e nas mãos de quem ela estará - Jaqueline Trevizan, Ne...
A tecnologia no futuro e nas mãos de quem ela estará - Jaqueline Trevizan, Ne...
 
oVirt uma solução de virtualização distribuída opensource - Daniel Lara - Tch...
oVirt uma solução de virtualização distribuída opensource - Daniel Lara - Tch...oVirt uma solução de virtualização distribuída opensource - Daniel Lara - Tch...
oVirt uma solução de virtualização distribuída opensource - Daniel Lara - Tch...
 
Sistemas Embarcados e Buildroot - Renato Severo - Tchelinux Caxias do Sul 2019
Sistemas Embarcados e Buildroot - Renato Severo - Tchelinux Caxias do Sul 2019Sistemas Embarcados e Buildroot - Renato Severo - Tchelinux Caxias do Sul 2019
Sistemas Embarcados e Buildroot - Renato Severo - Tchelinux Caxias do Sul 2019
 
Com que ônibus eu vou? Uma gentil introdução ao Python.
Com que ônibus eu vou? Uma gentil introdução ao Python.Com que ônibus eu vou? Uma gentil introdução ao Python.
Com que ônibus eu vou? Uma gentil introdução ao Python.
 
O TCC... um dia ele chega! (The beautiful and easy LaTeX way.
O TCC... um dia ele chega! (The beautiful and easy LaTeX way.O TCC... um dia ele chega! (The beautiful and easy LaTeX way.
O TCC... um dia ele chega! (The beautiful and easy LaTeX way.
 
Não deixe para testar depois o que você pode testar antes.
Não deixe para testar depois o que você pode testar antes. Não deixe para testar depois o que você pode testar antes.
Não deixe para testar depois o que você pode testar antes.
 
Desenvolvendo jogos com pygame
Desenvolvendo jogos com pygameDesenvolvendo jogos com pygame
Desenvolvendo jogos com pygame
 
Essa câmera faz fotos muito boas, né?
Essa câmera faz fotos muito boas, né?Essa câmera faz fotos muito boas, né?
Essa câmera faz fotos muito boas, né?
 

JQuery do dia-a-dia Gustavo Dutra

  • 2. void bogosort(int size, int *array) { int i, j; for (i = 1; i <= size; i++) if (i == size) return; else if (array[i-1] > array[i]) break; for (i = 0; i < size; i++) { j = rand() % size; if (array[i] != array[j]) { int aux = array[i]; } array[i] = array[j]; array[j] = aux; C } bogosort(size, array); } Adaptado de http://pt.wikipedia.org/wiki/Bogosort#C
  • 3. from random import shuffle def bogosort(seq): while not all(x<=y for x,y in zip(seq,seq[1:])): shuffle(seq) return seq Adaptado de http://pt.wikipedia.org/wiki/Bogosort#Python Python
  • 5. DOM - Data Object Model Define um padrão para acessar documentos DOM Core Qualquer documento DOM XML XML DOM HTML HTML Padrão do quê? OBJETOS MÉTODOS PROPRIEDADES Fonte: http://www.w3schools.com/HTMLDOM/dom_intro.asp
  • 6. HTML DOM var el = document.getElementById("myDiv"); el.parentNode.removeChild(el);
  • 7. HTML DOM var el = document.getElementById("myDiv"); el.parentNode.removeChild(el); jQuery $("#myDiv").remove(); HTML DOM SUCKS!
  • 8. <input type="text" name="start_date" onchange="validDate(this);" /> <input type="text" name="end_date" onchange="validDate(this);" />
  • 9. <input type="text" name="start_date" onchange="validDate(this);" /> <input type="text" name="end_date" onchange="validDate(this);" /> E se o JavaScript não estiver habilitado? E se mudar o nome da função validDate ? E se for adicionado mais parâmetros?
  • 10. <input type="text" name="start_date" onchange="validDate(this);" /> <input type="text" name="end_date" onchange="validDate(this);" /> E se o JavaScript não estiver habilitado? E se mudar o nome da função validDate ? E se for adicionado mais parâmetros? MANDA O ESTAGIÁRIO!
  • 11. <input type="text" name="start_date" class="date" /> <input type="text" name="end_date" class="date" />
  • 12. <input type="text" name="start_date" class="date" /> <input type="text" name="end_date" class="date" /> window.onload = function() { var inputs = document.getElementsByTagName("input"); for (var i = 0; i < inputs.length; i++) { if (inputs.[i].className == 'date') { inputs[i].onchange = function() { validDate(this); } } } } function validDate(element) { //... }
  • 14. Javascript Não-Obstrusivo Graceful Degradation Progressive Enhancement
  • 15. Javascript Não-Obstrusivo Graceful Degradation Progressive Enhancement Não suponha, VERIFIQUE!
  • 16. Javascript Não-Obstrusivo Graceful Degradation Progressive Enhancement Não suponha, VERIFIQUE! Valide em mais de um browser!
  • 17. Javascript Não-Obstrusivo Graceful Degradation Progressive Enhancement Não suponha, VERIFIQUE! Valide em mais de um browser! Mantenha os scripts o mais seguro POSSÍVEL
  • 18. DOM SUCKS + Javascript Não-Obstrusivo
  • 19. DOM SUCKS + Javascript Não-Obstrusivo originaram jQuery
  • 21. jQuery Core Ajax
  • 22. Attributes jQuery Core Ajax
  • 23. Manipulation Attributes jQuery Core Ajax
  • 24. Manipulation Attributes jQuery Core Effects Ajax
  • 25. Manipulation Attributes jQuery Core Effects Ajax Traversing
  • 26. Manipulation Attributes jQuery Core Effects Selectors Ajax Traversing
  • 27. Manipulation Attributes jQuery Core Effects Selectors Events Ajax Traversing
  • 28. Manipulation Attributes CSS jQuery Core Effects Selectors Events Ajax Traversing
  • 29. Manipulation Attributes CSS jQuery Core Effects Selectors Internals Events Ajax Traversing
  • 30. Manipulation Attributes CSS jQuery Utilities Core Effects Selectors Internals Events Ajax Traversing
  • 31. Manipulation Attributes CSS jQuery UI jQuery Utilities Core Effects Selectors Internals Events Ajax Traversing
  • 32. Manipulation Plugins Attributes CSS jQuery UI jQuery Utilities Core Effects Selectors Internals Events Ajax Traversing
  • 34. ((typeof jQuery) == "function") ((typeof $) == "function") jQuery === $
  • 35. Jaspion = $.noConflict() ((typeof $) == "undefined") jQuery === Jaspion
  • 37. $(document).ready(function() { // ... }); $(function() { // ... OU });
  • 38. S $("div") body E $("#id") L $(".class") ul div#id E $("ul li") $("ul li:not(li.active)") li div.class T $("li.active ~ li") O $("li:contains(Home)") li.active R $("ul li:first,ul li:last") E $("div#id > div") li S
  • 39. S $("div") body E $("#id") L $(".class") ul div#id E $("ul li") $("ul li:not(li.active)") li div.class T $("li.active ~ li") O $("li:contains(Home)") li.active R $("ul li:first,ul li:last") E $("div#id > div") li S
  • 40. S $("div") body E $("#id") L $(".class") ul div#id E $("ul li") $("ul li:not(li.active)") li div.class T $("li.active ~ li") O $("li:contains(Home)") li.active R $("ul li:first,ul li:last") E $("div#id > div") li S
  • 41. S $("div") body E $("#id") L $(".class") ul div#id E $("ul li") $("ul li:not(li.active)") li div.class T $("li.active ~ li") O $("li:contains(Home)") li.active R $("ul li:first,ul li:last") E $("div#id > div") li S
  • 42. S $("div") body E $("#id") L $(".class") ul div#id E $("ul li") $("ul li:not(li.active)") li div.class T $("li.active ~ li") O $("li:contains(Home)") li.active R $("ul li:first,ul li:last") E $("div#id > div") li S
  • 43. S $("div") body E $("#id") L $(".class") ul div#id E $("ul li") $("ul li:not(li.active)") li div.class T $("li.active ~ li") O $("li:contains(Home)") li.active R $("ul li:first,ul li:last") E $("div#id > div") li S
  • 44. S $("div") body E $("#id") L $(".class") ul div#id E $("ul li") $("ul li:not(li.active)") li div.class T $("li.active ~ li") O $("li:contains(Home)") li.active R $("ul li:first,ul li:last") E $("div#id > div") li S
  • 45. S $("div") body E $("#id") L $(".class") ul div#id E $("ul li") $("ul li:not(li.active)") li div.class T $("li.active ~ li") O $("li:contains(Home)") li.active R $("ul li:first,ul li:last") E $("div#id > div") li S
  • 46. S $("div") body E $("#id") L $(".class") ul div#id E $("ul li") $("ul li:not(li.active)") li div.class T $("li.active ~ li") O $("li:contains(Home)") li.active R $("ul li:first,ul li:last") E $("div#id > div") li S
  • 47. C $("#myId li"); O var el = $("#myId"); N $("li", el); T E $("li", "#myId"); X T var el = getElementById("myId"); $("li", el); O
  • 49. A $(...) .addClass("css-class") T .removeClass("css-class") R .toggleClass("css-class") I B U T O S
  • 50. A $(...) .addClass("css-class") T .removeClass("css-class") R .toggleClass("css-class") .html() I .html("innerHTML") B U T O S
  • 51. A $(...) .addClass("css-class") T .removeClass("css-class") R .toggleClass("css-class") .html() I .html("innerHTML") B .text() U .text("text") T O S
  • 52. A $(...) .addClass("css-class") T .removeClass("css-class") R .toggleClass("css-class") .html() I .html("innerHTML") B .text() U .text("text") .attr("id") T .attr("id", "new-id") O S
  • 53. A $(...) .addClass("css-class") T .removeClass("css-class") R .toggleClass("css-class") .html() I .html("innerHTML") B .text() U .text("text") .attr("id") T .attr("id", "new-id") O .val() S .val("input value");
  • 54. A $(...) T R A V E S S .children() A R
  • 55. A $(...) T R A V E S .children() S .eq(0) A R
  • 56. A $(...) T R A V E S .children() .eq(0) S .next() A R
  • 57. A $(...) T R A V E S .children() .eq(0) S .next() .prev() A R
  • 58. A $(...) T R A V E S .children() .eq(0) S .next() .find(...) A .prev() R
  • 59. A $(...) T R A V E S .children() .eq(0) S .next() .end() A .prev() .find(...) R
  • 60. M A $(...) N I .prepend() P U .append() L A R
  • 61. M A N .before() I $(...) P U .after() L A R
  • 62. M .wrap(...) A $(...) N I P $(...) .clone(...) $(...) U L A .clone() cria elementos soltos do documento R
  • 63. .click(function(event) { // ... E }); V .dblclick(function(event) { // ... E }); N .blur(function(event) { T // ... }); O .keypress(function(event) { S // ... });
  • 64. E V .hover(function(event) { E // mouseenter N },function(event) { T // mouseleave O }); S
  • 65. .bind('click', function(event) { // ... E }); V .trigger('click'); E .triggerHandler('click'); N T O S
  • 66. .bind('click', function(event) { // ... E }); V .trigger('click'); E .triggerHandler('click'); N T .bind('myEv', function(event) { // ... O }); S .trigger('myEv');
  • 67. .show() E F .fadeOut() E .hide() I T .slideDown() O .fadeIn() S .slideUp()