+ All Categories

Jquery

Date post: 13-Jan-2015
Category:
Upload: luisartola
View: 4,244 times
Download: 5 times
Share this document with a friend
Description:
 
Popular Tags:
110
jQuery
Transcript
Page 1: Jquery

jQuery

Page 2: Jquery

jQuerypor Luis Artola

Page 3: Jquery

jQuerypor Luis Artola sicos!

Page 4: Jquery

jQuerypor Luis Artola sicos! programania.net

Page 5: Jquery

jQuerypor Luis Artola sicos! programania.netprecriticas.com

Page 6: Jquery

RECURSOS• Tutorials

http://docs.jquery.com/Tutorials

• Visual jqueryhttp://visualjquery.com/

• Learning jqueryhttp://www.learningjquery.com/

• jQuery Essentialshttp://www.slideshare.net/1Marc/jquery-essentials

• Javascript Library Overviewhttp://www.slideshare.net/jeresig/javascript-library-overview

Page 7: Jquery

¿QUÉ PUEDO HACER?Bombardeo de código

Page 8: Jquery

<script type="text/javascript" src="jquery.js"></script>

1/8

Page 9: Jquery

2/8

Page 10: Jquery

• $(“p”) .appendTo(“#foo”); Mueve “algo” a id=foo

2/8

Page 11: Jquery

• $(“p”) .appendTo(“#foo”); Mueve “algo” a id=foo

• $(...).css(“border”, “1px solid black”); Ponle a “algo” el borde 1px negro.

2/8

Page 12: Jquery

• $(“p”) .appendTo(“#foo”); Mueve “algo” a id=foo

• $(...).css(“border”, “1px solid black”); Ponle a “algo” el borde 1px negro.

• $(...).val(“3”); Ponle el valor a “algo” = 3.!

2/8

Page 13: Jquery

• $(“p”) .appendTo(“#foo”); Mueve “algo” a id=foo

• $(...).css(“border”, “1px solid black”); Ponle a “algo” el borde 1px negro.

• $(...).val(“3”); Ponle el valor a “algo” = 3.!

• $(...).val(); Dame el valor de “algo”. !

2/8

Page 14: Jquery

3/8

Page 15: Jquery

• $(...).attr(“href”, “http://google.com”); Que todos los links tengan el atributo href como google.com

3/8

Page 16: Jquery

• $(...).attr(“href”, “http://google.com”); Que todos los links tengan el atributo href como google.com

• $(...).html(“<p>Iʼm new</p>”); Cambia el HTML de “algo” por ....

3/8

Page 17: Jquery

• $(...).attr(“href”, “http://google.com”); Que todos los links tengan el atributo href como google.com

• $(...).html(“<p>Iʼm new</p>”); Cambia el HTML de “algo” por ....

• $(...).attr(“checked”,”checked”); Pon el atributo checked a checked.

3/8

Page 18: Jquery

• $(...).attr(“href”, “http://google.com”); Que todos los links tengan el atributo href como google.com

• $(...).html(“<p>Iʼm new</p>”); Cambia el HTML de “algo” por ....

• $(...).attr(“checked”,”checked”); Pon el atributo checked a checked.

• $(...).click(function(){ something();}); Cuando “algo” es clickado haz “someting()”.

3/8

Page 19: Jquery

4/8

Page 20: Jquery

• Con cada click haz un desplegar / replegar.$(...).click( function(){ $(“div:first”).slideToggle(); });

4/8

Page 21: Jquery

• Con cada click haz un desplegar / replegar.$(...).click( function(){ $(“div:first”).slideToggle(); });

• $(...).animate({ “width”: “300px” }, 500); Amplia un elemento a 300px en 5 segundos.

4/8

Page 22: Jquery

• Con cada click haz un desplegar / replegar.$(...).click( function(){ $(“div:first”).slideToggle(); });

• $(...).animate({ “width”: “300px” }, 500); Amplia un elemento a 300px en 5 segundos.

• $(...).fadeTo(0.3); Reduce la opacidad de “algo” al 30%.

4/8

Page 23: Jquery

5/8

Page 24: Jquery

• $(...).get(“tag.php”, { “bar”: “baz” }); Envía datos por get a tag.php.

5/8

Page 25: Jquery

• $(...).get(“tag.php”, { “bar”: “baz” }); Envía datos por get a tag.php.

• $.post(“send.php”, { foo: ”bar” }, function(response){ alert(response); }); Envía datos por post a send.php y luego avisa.

5/8

Page 26: Jquery

LOAD 6/8

Page 27: Jquery

• $(...).load(ʻ/direccion/url/ʼ) Cargar una url en un id.

LOAD 6/8

Page 28: Jquery

• $(...).load(ʻ/direccion/url/ʼ) Cargar una url en un id.

• $(...).load(ʻ/direccion/url/ #containerʼ) Cargar una url en un id, pero solo el id container.

LOAD 6/8

Page 29: Jquery

• $(...).load(ʻ/direccion/url/ʼ) Cargar una url en un id.

• $(...).load(ʻ/direccion/url/ #containerʼ) Cargar una url en un id, pero solo el id container.

• $(...).load(ʻ/direccion/url/ʼ, $(ʻ#formʼ).serialize()) Cargar una url en un id, pasándo parámetros por GET.

LOAD 6/8

Page 30: Jquery

• $(...).load(ʻ/direccion/url/ʼ) Cargar una url en un id.

• $(...).load(ʻ/direccion/url/ #containerʼ) Cargar una url en un id, pero solo el id container.

• $(...).load(ʻ/direccion/url/ʼ, $(ʻ#formʼ).serialize()) Cargar una url en un id, pasándo parámetros por GET.

• $(...).load(ʻ/direccion/url/ʼ, $(ʻ#formʼ).serializeArray()) Cargar una url en un id, pasando parámetros por POST

LOAD 6/8

Page 31: Jquery

• $(...).load(ʻ/direccion/url/ʼ) Cargar una url en un id.

• $(...).load(ʻ/direccion/url/ #containerʼ) Cargar una url en un id, pero solo el id container.

• $(...).load(ʻ/direccion/url/ʼ, $(ʻ#formʼ).serialize()) Cargar una url en un id, pasándo parámetros por GET.

• $(...).load(ʻ/direccion/url/ʼ, $(ʻ#formʼ).serializeArray()) Cargar una url en un id, pasando parámetros por POST

• También .post(), .get(), .getJSON(), .ajax() que permiten, entre otras cosas, callbacks.

LOAD 6/8

Page 32: Jquery

7/8

Page 33: Jquery

• $.fn.myPlugin = function(){ return this.each(function(){ $(this).html(“you used myPlugin!”); });});

$(...).myPlugin();

7/8

Page 34: Jquery

• $.fn.myPlugin = function(){ return this.each(function(){ $(this).html(“you used myPlugin!”); });});

$(...).myPlugin();

7/8

Page 35: Jquery

• $.fn.myPlugin = function(){ return this.each(function(){ $(this).html(“you used myPlugin!”); });});

$(...).myPlugin();

7/8

Page 36: Jquery

jQuery("<div/>", { id: "foo", css: { height: "50px", width: "50px", color: "blue", backgroundColor: "#ccc" }, click: function() { $(this).css("backgroundColor", "red"); } }).appendTo("body");

8/8

Page 37: Jquery

SelectoresEl gran superpoder de jQuery

Page 38: Jquery

1/8

Page 39: Jquery

• $('div') Selecciona todas las capas.

1/8

Page 40: Jquery

• $('div') Selecciona todas las capas.

• $('#myid') Selecciona el id myid.

1/8

Page 41: Jquery

• $('div') Selecciona todas las capas.

• $('#myid') Selecciona el id myid.

• $('div#myid') Selecciona el div con id myid.

1/8

Page 42: Jquery

2/8

Page 43: Jquery

• $('.myclass') Selecciona todos los elementos de la clase myclass.

2/8

Page 44: Jquery

• $('.myclass') Selecciona todos los elementos de la clase myclass.

• $('.myclass .otherclass') Selecciona todos los elementos de la clase myclass y de otherclass.

2/8

Page 45: Jquery

• $('.myclass') Selecciona todos los elementos de la clase myclass.

• $('.myclass .otherclass') Selecciona todos los elementos de la clase myclass y de otherclass.

• $('#container p') Selecciona todos los párrafos hijos del id container.

2/8

Page 46: Jquery

3/8

Page 47: Jquery

$(':empty') Selecciona todos los elementos sin hijos.

3/8

Page 48: Jquery

$(':empty') Selecciona todos los elementos sin hijos.

3/8

Page 49: Jquery

$(':empty') Selecciona todos los elementos sin hijos.

•$('*') Selecciona todos los elementos.

3/8

Page 50: Jquery

$(':empty') Selecciona todos los elementos sin hijos.

•$('*') Selecciona todos los elementos.

3/8

Page 51: Jquery

$(':empty') Selecciona todos los elementos sin hijos.

•$('*') Selecciona todos los elementos.

•$('[rel]') Selecciona todos los elementos con un atributo rel.

3/8

Page 52: Jquery

$(':empty') Selecciona todos los elementos sin hijos.

•$('*') Selecciona todos los elementos.

•$('[rel]') Selecciona todos los elementos con un atributo rel.

3/8

Page 53: Jquery

$(':empty') Selecciona todos los elementos sin hijos.

•$('*') Selecciona todos los elementos.

•$('[rel]') Selecciona todos los elementos con un atributo rel.

•$('[name=myname]') Selecciona todos los elementos con un atributo name que valga myname.

3/8

Page 54: Jquery

4/8

Page 55: Jquery

4/8

Page 56: Jquery

•$('.myclass > code') Selecciona todos los <code> hijos de los elementos de la clase myclass.

4/8

Page 57: Jquery

•$('.myclass > code') Selecciona todos los <code> hijos de los elementos de la clase myclass.

4/8

Page 58: Jquery

•$('.myclass > code') Selecciona todos los <code> hijos de los elementos de la clase myclass.

•$('#myid + .myclass') Selecciona a todos los elementos de la clase myclass que son hermanos de myid.

4/8

Page 59: Jquery

•$('.myclass > code') Selecciona todos los <code> hijos de los elementos de la clase myclass.

•$('#myid + .myclass') Selecciona a todos los elementos de la clase myclass que son hermanos de myid.

4/8

Page 60: Jquery

•$('.myclass > code') Selecciona todos los <code> hijos de los elementos de la clase myclass.

•$('#myid + .myclass') Selecciona a todos los elementos de la clase myclass que son hermanos de myid.

•$('#myid ~ .myclass') Selecciona a todos los myclass que siguen a un hermano myid.

4/8

Page 61: Jquery

5/8

Page 62: Jquery

$('p:nth-child(odd)') Selecciona los <p> hijos impares de su padre.

5/8

Page 63: Jquery

$('p:nth-child(odd)') Selecciona los <p> hijos impares de su padre.

5/8

Page 64: Jquery

$('p:nth-child(odd)') Selecciona los <p> hijos impares de su padre.

•$('li:first-child') Selecciona los <li> que son el primer hijo de su padre.

5/8

Page 65: Jquery

$('p:nth-child(odd)') Selecciona los <p> hijos impares de su padre.

•$('li:first-child') Selecciona los <li> que son el primer hijo de su padre.

5/8

Page 66: Jquery

$('p:nth-child(odd)') Selecciona los <p> hijos impares de su padre.

•$('li:first-child') Selecciona los <li> que son el primer hijo de su padre.

•$(':only-child') Selecciona los hijos únicos.

5/8

Page 67: Jquery

$('p:nth-child(odd)') Selecciona los <p> hijos impares de su padre.

•$('li:first-child') Selecciona los <li> que son el primer hijo de su padre.

•$(':only-child') Selecciona los hijos únicos.

5/8

Page 68: Jquery

$('p:nth-child(odd)') Selecciona los <p> hijos impares de su padre.

•$('li:first-child') Selecciona los <li> que son el primer hijo de su padre.

•$(':only-child') Selecciona los hijos únicos.

•$(':not(.myclass)') Selecciona los elementos que no son de la clase myclass.

5/8

Page 69: Jquery

6/8

Page 70: Jquery

$('a[rel!=nofollow]') anchors que no tiene un atributo ʻrelʼ = ʻnofollowʼ ( o que no tienen atributo rel ).

6/8

Page 71: Jquery

$('a[rel!=nofollow]') anchors que no tiene un atributo ʻrelʼ = ʻnofollowʼ ( o que no tienen atributo rel ).

•$('[id^=hello]') selecciona los elementos cuyo id empieza por hello.

6/8

Page 72: Jquery

$('a[rel!=nofollow]') anchors que no tiene un atributo ʻrelʼ = ʻnofollowʼ ( o que no tienen atributo rel ).

•$('[id^=hello]') selecciona los elementos cuyo id empieza por hello.

6/8

Page 73: Jquery

$('a[rel!=nofollow]') anchors que no tiene un atributo ʻrelʼ = ʻnofollowʼ ( o que no tienen atributo rel ).

•$('[id^=hello]') selecciona los elementos cuyo id empieza por hello.

•$('[id$=goodbye]') ... cuyo id termina por goodbye.

6/8

Page 74: Jquery

$('a[rel!=nofollow]') anchors que no tiene un atributo ʻrelʼ = ʻnofollowʼ ( o que no tienen atributo rel ).

•$('[id^=hello]') selecciona los elementos cuyo id empieza por hello.

•$('[id$=goodbye]') ... cuyo id termina por goodbye.

6/8

Page 75: Jquery

$('a[rel!=nofollow]') anchors que no tiene un atributo ʻrelʼ = ʻnofollowʼ ( o que no tienen atributo rel ).

•$('[id^=hello]') selecciona los elementos cuyo id empieza por hello.

•$('[id$=goodbye]') ... cuyo id termina por goodbye.

•$('[style*=background]') selecciona los elementos que tiene un style con background definido.

6/8

Page 76: Jquery

7/8

Page 77: Jquery

$('[class~=myclass]') Selecciona los elementos que tiene la clase myclass, por lo menos.

7/8

Page 78: Jquery

$('[class~=myclass]') Selecciona los elementos que tiene la clase myclass, por lo menos.

7/8

Page 79: Jquery

$('[class~=myclass]') Selecciona los elementos que tiene la clase myclass, por lo menos.

•$('[id|=hello]') Selecciona aquellos que tienen un id hello o que empieza por hello.

7/8

Page 80: Jquery

$('[class~=myclass]') Selecciona los elementos que tiene la clase myclass, por lo menos.

•$('[id|=hello]') Selecciona aquellos que tienen un id hello o que empieza por hello.

7/8

Page 81: Jquery

$('[class~=myclass]') Selecciona los elementos que tiene la clase myclass, por lo menos.

•$('[id|=hello]') Selecciona aquellos que tienen un id hello o que empieza por hello.

•$('li:gt(2)') Selecciona aquellos <li> después del tercero.

7/8

Page 82: Jquery

8/8

Page 83: Jquery

• $('li:contains(second)') Selecciona los <li> que contienen la palabra “second”

8/8

Page 84: Jquery

• $('li:contains(second)') Selecciona los <li> que contienen la palabra “second”

• $('.myclass:has(#myid)') Selecciona los myclass que tienen un hijo myid

8/8

Page 85: Jquery

• $('li:contains(second)') Selecciona los <li> que contienen la palabra “second”

• $('.myclass:has(#myid)') Selecciona los myclass que tienen un hijo myid

• $('.myclass:visible') Selecciona todos los myclass visibles.

8/8

Page 86: Jquery

¡(casi)Nunca haces un loop o un foreach!

Page 87: Jquery

TEORÍASe acabó el bombardeo de código.

Page 88: Jquery
Page 89: Jquery

• Filosofía jQuery:Simplificar la relación entre HTML y JavaScript.

Page 90: Jquery

• Filosofía jQuery:Simplificar la relación entre HTML y JavaScript.

• #1. Encontrar “algo” de HTML #2. Hacer algo con él.

Page 91: Jquery
Page 92: Jquery

• Herramienta poderosa a la hora de encontrar una serie de elementos en un documento. Desde CSS 1 hasta 3 y los suyos propios.

Page 93: Jquery

• Herramienta poderosa a la hora de encontrar una serie de elementos en un documento. Desde CSS 1 hasta 3 y los suyos propios.

• API sólida y usable que te esconde los probemas de compatibilidad entre navegadores.

Page 94: Jquery
Page 95: Jquery

• Manipulation:before(), after(), appendTo(), append(), ...

Page 96: Jquery

• Manipulation:before(), after(), appendTo(), append(), ...

• Attributes: css(), attr(), html(), val(), addClass(), text(), ...

Page 97: Jquery

• Manipulation:before(), after(), appendTo(), append(), ...

• Attributes: css(), attr(), html(), val(), addClass(), text(), ...

• Events: bind(), trigger(), unbind(), live(), click(), submit(), ...

Page 98: Jquery
Page 99: Jquery

• Effects: show(), fadeOut(), toggle(), animate(), ...

Page 100: Jquery

• Effects: show(), fadeOut(), toggle(), animate(), ...

• Traversingfind(), prevAll(), next(), hasClass(), children(), siblings(), ...

Page 101: Jquery

• Effects: show(), fadeOut(), toggle(), animate(), ...

• Traversingfind(), prevAll(), next(), hasClass(), children(), siblings(), ...

• Ajax get(), getJSON(), post(), ajax(), load()

Page 102: Jquery
Page 103: Jquery

• Las acciones pueden ser encadenadas:

$(...).addClass(ʻfooʼ).fadeIn().html(“foo”);

$("li").not(":has(ul)").css("border", "1px solid black");

$(':input').parents(':not(:first)').show()

Page 104: Jquery

• jQuery tiene una enorme comunidad.

• test coverage! plugins! books support tutorials

• open (free) license! speed

• Código ligero.

Page 105: Jquery
Page 106: Jquery

• Projectos que lo usan: Wordpress, Drupal, Textpattern

Page 107: Jquery

• Projectos que lo usan: Wordpress, Drupal, Textpattern

• Compañías que lo usan: Google, Amazon, Digg, Netflix, Dell, HP, Bank of America, Intel... NBC, CBS, BBC, Reuters, Newsweek...

Page 108: Jquery

JQUERY UI

Page 110: Jquery

¿CUÁL ES MEJOR?

• jQuery tiene selectores más potentes

• Dojo tiene un framework UI más potente.

• Prototype y MooTools, son mucho más extensibles (OO) y modulares.


Recommended