Académique Documents
Professionnel Documents
Culture Documents
Hasta el momento construimos pginas web usando HTML y les dimos estilo usando
CSS. Nuestras pginas quedan geniales, pero en realidad nohacen nada; no
podemos arrastrar elementos por la pgina, abrir o cerrar paneles deslizantes, animar
los elementos de HTML, ni agregar elementos nuevos a nuestras pginas de HTML
simplemente haciendo un clic sobre un botn.
Pero todo eso est a punto de cambiar. En esta serie de ejercicios vas a
aprender jQuery, que te va a permitir hacer todas esas cosas y muchas ms.
Instrucciones
}
#azul {
background-color:#0000FF;
}
#amarillo {
background-color:#E2BE22;
}
#verde {
background-color:#008800;
}
*.js
$(document).ready(function() {
$('div').mouseenter(function() {
$(this).animate({
height: '+=10px'
});
});
$('div').mouseleave(function() {
$(this).animate({
height: '-=10px'
});
});
$('div').click(function() {
$(this).toggle(1000);
});
});
Para aprovechar jQuery al mximo tenemos que repasar cmo se compone una
pgina HTML.
Un documento de HTML est estructurado de acuerdo con elDocument Object
Model, es decir, el Modelo de Objetos del Documento, oDOM. jQuery puede acceder
y modificar el HTML interactuando con el DOM.
Revis el cdigo en script.js. Pronto vamos a explicarlo, pero por ahora todo lo que
tens que saber es que este cdigo seleccionar un elemento de HTML y lo har
desaparecer cuando el documento de HTML se cargue.
En este ejercicio queremos centrarnos en el elemento div, as que en la lnea 2 dentro
de $() agreg div.
Cambiar de objetivos
Como te acordars, .button es la forma que uss en CSS para centrarte en cualquier
elemento que en tu archivo de HTML tengaclass="button".
Instrucciones
Qu es jQuery?
2.
3.
Primeros pasos
Lo que est entre los parntesis de.ready() es el evento de jQuery, que ocurre en
cuanto el documento HTML est listo.
Entonces,
$(document).ready(algo);
dice: "cuando el documento HTML est listo, hac algo!" (En el siguiente ejercicio te
vamos a mostrar cmo reemplazar algo con una accin).
Fijate que .ready(); termina con un punto y coma. Esto le indica a jQuery que
terminaste de darle una orden.
Instrucciones
El enfoque funcional
Agreg function(){} dentro de.ready(). Todava no tens que escribir nada entre las
llaves ({}) defunction; eso lo vamos a ver en el siguiente ejercicio.
Deslizamiento electr(n)ico
Ya casi terminamos! Ahora solamente tenemos que incluir una accin en el cuerpo de
nuestra funcin. En este caso vamos a hacer un encabezadodiv deslizable para que
se haga visible en nuestra pgina HTML.
Entre las {} de nuestra function(), vamos a convertir nuestro div en un objeto de
jQuery, para que jQuery pueda manipularlo. De forma muy parecida a como
usamos .ready() en$(document), vamos a usar la accin.slideDown() en nuestro
objeto divde jQuery.
Dentro de los parntesis de.slideDown, vamos a indicarle la rapidez con la que debe
deslizarse. Vamos a escribir 'slow' (es decir, despacio). No te olvides de poner las
comillas.
Instrucciones
Hac clic en "Guardar y enviar" cuando ests listo para poner en prctica tus nuevas
habilidades de jQuery y crear un botn interactivo para tu sitio web.
Listos!
1.
2.
Adentro...!
Genial! Ahora vamos a incluir nuestra palabra clave function junto con dos nuevas
acciones, mouseenter() yfadeTo().
debera hacer que todos los <div> de la pgina se oculten en cuanto muevas el
cursor sobre uno de ellos. (En la prxima leccin vamos a ver cmo afectar solamente
un <div> entre muchos.) Por ahora solamente tenemos un <div>, as que este cdigo
est bien.
Vamos a ubicar fadeTo() dentro demouseenter(), en lugar de hide().fadeTo() toma
dos argumentos, oentradas, separados por una coma, entre sus parntesis: la
velocidad a la cual se desvanece el elemento y laopacidad (o transparencia) que
tendr al desvanecerse. Por ejemplo,
fadeTo('fast', 0.25);
...y afuera!
$p vs. $('p')
solamente una convencin para decir: "Mir, esta variable contiene un objeto de
jQuery". Podemos llamar a $p de cualquier
manera: $parrafo, parrafo,vacas_espaciales, de cualquier forma! Simplemente es una
ayuda para las personas que leen nuestro cdigo que vean $p, ya que es una forma
concreta de decir "Mir, ac hay un objeto de jQuery 'p'".
Pero por otra parte, $() s es mgico. Esta es la funcin disfrazada que crea objetos de
jQuery. Si ests creando un objeto de jQuery, tens que usarlo!
Instrucciones
Cre una variable $div, y asignala al objeto de jQuery div usando =. No necesits
usar $(document).ready() ni ningn otro cdigo adicional.
Le estamos pasando a .ready() una funcin (que no toma argumentos; por eso es que
sus () estn vacos), y el trabajo de esa funcin es ocultar, con.hide(), el objeto div de
jQuery.
Instrucciones
jQuery, todo lo que necesitamos es escribir '.rojo' entre comillas, y podemos ponerlo
dentro de $() para crear un objeto de jQuery.
Instrucciones
Seleccin mediante ID
Selecciones flexibles
Todo lo que puedas modificar con CSS, podrs modificarlo con jQuery. Por ejemplo
podemos aplicar fadeTo() a un selector p de esta manera:
$('p').fadeTo('slow', 0);
Podemos aplicar fadeTo() tanto al selector p como al selector li, de esta manera:
$('p, li').fadeTo('slow', 0);
'this' es importante!
$(document).ready(function() {
$('div').mouseenter(function() {
$('div').hide();
});
});
La segunda lnea est bien: nos dice que cuando pasamos el cursor sobre un div,
debe ejecutarse una accin determinada. Sin embargo, $('div').hide(); no solamente
ocultar el div sobre el que pass el cursor; tambin ocultar todos losdiv de la
pgina. Cmo podemos indicarle a jQuery que solamente queremos
afectar este div en particular?
Con this, por supuesto!
La palabra clave this (este) se refiere al objeto de jQuery con el que estamos
trabajando en ese momento. Las reglas de operacin son un poco complejas, pero lo
importante es entender que si uss un controlador de eventos (eventos es el nombre
elegante de las acciones como.click() y .mouseenter(), ya que controlan eventos de
jQuery) en un elemento, pods llamar al evento que ocurre (tal como fadeOut()) en$
(this), y el evento solamenteafectar al elemento con el que hacs algo en ese
momento (por ejemplo, sobre el que se hace clic o se pasa el cursor).
Instrucciones
Listo?
Muy bien! Es hora de usar nuestros conocimientos recin adquiridos de jQuery para
agregar otro componente interactivo a nuestro sitio web: un panel deslizante que se
mueva hacia arriba y hacia abajo cuando hacemos clic sobre l.
Ya escribimos el HTML y CSS que necesits. Tu misin: animarlo con jQuery.
Instrucciones
body {
margin:0 auto;
padding:0;
width:200px;
text-align:center;
}
a:hover{
-webkit-box-shadow: 0 0 8px #FFD700;
-moz-box-shadow: 0 0 8px #FFD700;
box-shadow: 0 0 8px #FFD700;
cursor:pointer;
}
.panel {
background: #ffffbd;
background-size:90% 90%;
height:300px;
display:none;
font-family:garamond,times-new-roman,serif;
}
.panel p{
text-align:center;
}
.desliza {
margin:0;
padding:0;
border-top:solid 2px
#cc0000;
}
.tirar {
display:block;
position:relative;
right:-25px;
width:150px;
height:20px;
font-family:arial,sans-serif;
font-size:14px;
color:#ffffff;
background:#cc0000;
text-decoration:none;
-moz-border-bottom-left-radius:5px;
-moz-border-bottom-right-radius:5px;
border-bottom-left-radius:5px;
border-bottom-right-radius:5px;
}
.tirar p {
text-align:center;
}
Qu bien! Ahora queremos activar un evento cuando se hace clic sobre la pestaa
"Deslizar hacia arriba/abajo" (la clase de esa pestaa es tirar).
Instrucciones
1.
2.
Perfecto! Solo un paso ms: necesitamos decirle a .click() qu tiene que hacer. En
este caso, cuando hagamos clic sobre la pestaa, queremos que nuestro panel
deslizable (que tiene la clase .panel) se abra o se cierre.
El evento de jQuery que necesitamos para deslizar nuestro panel es (adivinaste):
.slideToggle()! Le daremos un argumento, que es la velocidad de la animacin de
deslizamiento.
Instrucciones
Bien hecho!
Buen trabajo! Ves lo fcil que es? Con un poco de magia de jQuery, pods hacer
que tus sitios web hagan toda clase de cosas asombrosas.
Tanto Twitter, Facebook, como Gmail usan jQuery para hacer que sus sitios web sean
interactivos. Aprendiendo jQuery te encamins hacia la grandeza de Internet!
Si en algn momento tens dudas sobre lo que es capaz de hacer jQuery, o sobre
cmo funciona, pods revisar la documentacin de jQuery (http://docs.jquery.com/),
que cubre todos los aspectos de la biblioteca.
Instrucciones
Cuando ests listo hac clic en Guardar y enviar para completar esta leccin y
continuar con ms maravillas de jQuery!
Cuando escribimos un texto as entre comillas, lo llamamos string (es decir, una
"cadena de caracteres"). De ahora en adelante, cada vez que digamos "string" o
"cadena" pods pensar en un "texto" o "frase." Las cadenas siempre van en medio de
comillas inglesas o simples.
Instrucciones
En script.js, crea una variable, $h1, y hac que sea igual a un objeto de jQuery que
contenga una etiqueta<h1> con el texto "Hola". La etiqueta debe ser una cadena.
Insertar elementos
agregamos un prrafo con el texto "Algo!" dentro de todos los divs con
clase .info. .append() har que el prrafo sea el ltimo hijo de cada div;.prepend() har
que el prrafo sea el primer hijo de cada div. (Nota: mir el consejo si ests usando
comillas simples).
.appendTo() hace lo mismo que .append(), pero invierte el orden de "lo que hay que
tiene el mismo efecto que el cdigo.append() anterior. .prependTo() tiene una relacin
parecida con .prepend().
Instrucciones