Diferencia entre revisiones de «Usuario:ManuelRomero/JavaScript/jquery/efectos»
De WikiEducator
< Usuario:ManuelRomero | JavaScript | jquery
(→devaneciéndose o degradaciones : fade=) |
|||
Línea 64: | Línea 64: | ||
{{Actividad| | {{Actividad| | ||
Modifica el ejercico anterior para que se realice en un tiempo y que luego se muestre un alert diciendo que la imagen se ha mostrado u ocultado}} | Modifica el ejercico anterior para que se realice en un tiempo y que luego se muestre un alert diciendo que la imagen se ha mostrado u ocultado}} | ||
− | ===devaneciéndose o degradaciones : fade | + | ===devaneciéndose o degradaciones : fade=== |
*Con la bibliteca JQuery se puede hacer que los elementos desaparezcan y aparezcan como desvaneciéndose o degradándose | *Con la bibliteca JQuery se puede hacer que los elementos desaparezcan y aparezcan como desvaneciéndose o degradándose | ||
*Para este comentido tenemos 4 métodos según se exponen a continuación | *Para este comentido tenemos 4 métodos según se exponen a continuación | ||
Línea 72: | Línea 72: | ||
fadeToggle() | fadeToggle() | ||
fadeTo() | fadeTo() | ||
− | <source> | + | </source> |
;fadeIn() | ;fadeIn() | ||
*Hace que aparezca un elemento oculto con un cierto efecto | *Hace que aparezca un elemento oculto con un cierto efecto | ||
Línea 127: | Línea 127: | ||
*Estos métodos permiten visualizar elementos (suelen ser imágenes) a modo de presentaciones | *Estos métodos permiten visualizar elementos (suelen ser imágenes) a modo de presentaciones | ||
*Tenemos tres métodos que podemos intuir su funcionamiento | *Tenemos tres métodos que podemos intuir su funcionamiento | ||
+ | <source lang=javascript> | ||
+ | $(selector).slideDown(speed,callback); | ||
+ | $(selector).slideUp(speed,callback); | ||
+ | $(selector).slideToggle(speed,callback); | ||
+ | </source> | ||
{{Actividad| | {{Actividad| | ||
− | Title=}} | + | Title=probando las presentaciones |
− | <> | + | | |
+ | <source lang=javascript> | ||
+ | <!DOCTYPE html> | ||
+ | <html> | ||
+ | <head> | ||
+ | <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.0/jquery.min.js"></script> | ||
+ | <script> | ||
+ | $(document).ready(function(){ | ||
+ | $("#cabecera").click(function(){ | ||
+ | //Prueba aquí con las diferentes funciones de slide | ||
+ | }); | ||
+ | }); | ||
+ | </script> | ||
+ | |||
+ | <style> | ||
+ | #panel, #cabecera { | ||
+ | padding: 5px; | ||
+ | text-align: center; | ||
+ | background-color: #e5eecc; | ||
+ | border: solid 1px #c3c3c3; | ||
+ | } | ||
+ | #panel { | ||
+ | padding: 50px; | ||
+ | } | ||
+ | </style> | ||
+ | </head> | ||
+ | <body> | ||
+ | |||
+ | <div id="cabecera">Haz un click aquí</div> | ||
+ | <div id="panel">Hello world!</div> | ||
+ | |||
+ | </body> | ||
+ | </source> | ||
+ | }} | ||
====animimaciones: animate y stop==== | ====animimaciones: animate y stop==== | ||
+ | *Con este método podemos crear animaciones personalizadas | ||
+ | <source lang=javascript> | ||
+ | $(selector).animate({params},velocidad,callback); | ||
+ | </source> | ||
+ | *El parámetro '''''params''''' sigue la sintasix de css para especificar el cambio | ||
+ | *Lo que va a ocurrir con este método es que el elemento seleccionado va a pasar a tener la nueva descripción de css con la velocidad marcada con el parámetro '''''velocidad''''' | ||
+ | *Vamos a hacer una serie de ejemplos para verlo | ||
+ | *Hay que tener en cuenta que por ejemplo para cabiar la posicón de un elemnto en el css ésta no puede ser estática (static), sino que debe de ser relative, fixed, o absolute | ||
+ | {{Actividad | ||
+ | |Title=Probando las animaciones | ||
+ | | | ||
+ | <source lang=html5> | ||
+ | <!DOCTYPE html> | ||
+ | <html> | ||
+ | <head> | ||
+ | <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.0/jquery.min.js"></script> | ||
+ | <script> | ||
+ | //Aquí vamos a ir incluyendo para probar los ejemplos | ||
+ | </script> | ||
+ | </head> | ||
+ | <body> | ||
+ | |||
+ | <button>Iniciar animación</button> | ||
+ | |||
+ | <p>Recuerda que para poder cambiar la posición de un elemnto, ésta no puede ser estática (static), sino que debe de ser relative, fixed, o absolute</p> | ||
+ | |||
+ | <div style="background:#98bf21;height:100px;width:100px;position:absolute;"></div> | ||
+ | |||
+ | </body> | ||
+ | </html> | ||
+ | </source> | ||
+ | ;Cambia la posición de un elemento | ||
+ | <source lang=javascript> | ||
+ | $("button").click(function(){ | ||
+ | $("div").animate({left: '250px'}); | ||
+ | }); | ||
+ | </source> | ||
+ | ;Cambia el tamaño de un elemento | ||
+ | <source lang=javascript> | ||
+ | $("button").click(function(){ | ||
+ | $("div").animate({ | ||
+ | left: '250px', | ||
+ | opacity: '0.5', | ||
+ | height: '150px', | ||
+ | width: '150px' | ||
+ | }); | ||
+ | }); | ||
+ | </source> | ||
+ | ;Cambia el tamaño del texto | ||
+ | *Este caso insertamos un texto en el div | ||
+ | <source lang=javascript> | ||
+ | $("button").click(function(){ | ||
+ | var div = $("div"); | ||
+ | div.animate({left: '100px'}, "slow"); | ||
+ | div.animate({fontSize: '3em'}, "slow"); | ||
+ | }); | ||
+ | </source> | ||
+ | ;Podemos encadenar animaciones para que se ejecute una detras de otra | ||
+ | <source lang=javascript> | ||
+ | $(document).ready(function(){ | ||
+ | $("button").click(function(){ | ||
+ | var div = $("div"); | ||
+ | div.animate({height: '300px', opacity: '0.4'}, "slow"); | ||
+ | div.animate({width: '300px', opacity: '0.8'}, "slow"); | ||
+ | div.animate({height: '100px', opacity: '0.4'}, "slow"); | ||
+ | div.animate({width: '100px', opacity: '0.8'}, "slow"); | ||
+ | }); | ||
+ | }); | ||
+ | </source> | ||
+ | |||
+ | }} | ||
====Anidando acciones==== | ====Anidando acciones==== | ||
====Concepto de funciones de callback==== | ====Concepto de funciones de callback==== |
Revisión de 01:48 7 abr 2016
Contenido
- Los efectos son acciones que queremos realizar sobre un elemento seleccionado
- La sintaxis sigue la básica de jquery
$(seleccion).accion()
- Vamos a ver distintos tipos de efectos, las posibilidades son enormes
Mostrar/Ocultar
$(seleccion).hide(time, callback) $(seleccion).show(time, callback)
- Los parámetros time y callback son opcioneles
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Document</title> <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script> <script> < script type = 'text/javascript' src = "//ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js" > </script> <script type="text/javascript"> $(document).ready(activa); function activa () { $("#muestra").click(muestra); $("#oculta").click(oculta); } function muestra(){ $("img").show(); } function oculta(){ $("img").hide(); } </script> </head> <body> <h1>Mostrando u ocultando imágenes</p> <button id="muestra">Muestra </button> <button id="oculta">Oculta</button> <br /> <img src="naturaleza.jpg" alt=""> </body> </html>
|
- parámetros opicones
- El primer parámetros especifica el tiempo en el cual ocurre la acción
- Valores
- slow
- fast
- un entero que especifica el tiempo en milisegundos
- El segundo parámetro es una función que se ejecutará cuando haya terminado la acción
devaneciéndose o degradaciones : fade
- Con la bibliteca JQuery se puede hacer que los elementos desaparezcan y aparezcan como desvaneciéndose o degradándose
- Para este comentido tenemos 4 métodos según se exponen a continuación
fadeIn() fadeOut() fadeToggle() fadeTo()
- fadeIn()
- Hace que aparezca un elemento oculto con un cierto efecto
$(selector).fadeIn(speed,callback); <source> ;fadeOut() *Tiene el efecto contrario (el de desaparecer desvaneciéndose) un elemento de html <source lang = javascript> $(selector).fadeOut(speed,callback); <source> {{Actividad|Dibuja tres elementos con un color de fondo y haz que aparezcan y desaparezcan con botones correspondientes usando las funciones de fada <source lang=html5> <!DOCTYPE html> <html> <head> <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.0/jquery.min.js"></script> <script> //Escribe aquí el código </script> </head> <body> <p>Mostrando la función fadeOut() fadeIn() modifinando los parámetros.</p> <button id=muestra>Muestra</button> <button id=oculta>Oculta</button> <div id="div1" style="width:80px;height:80px;background-color:red;"></div> <div id="div2" style="width:80px;height:80px;background-color:green;"></div> <div id="div3" style="width:80px;height:80px;background-color:blue;"></div> </body>
}}
- fadeToggle()
- Esta función tiene la característica de si ir intercambiando fadeIn y fadeOut alternativamente (Si está oculto, lo muestra, si está mostrado lo oculta
- En este caso el método no puede recibir funciones como el método toggle()
$(selector).fadeToggle(speed,callback);
- fadeTo()
- Este método admite un parámetro de opacidad.
- Este parámetro, que toma un valor entre 0 (totalmente transparente) y 1 (totalmente opaco), permite realizar un degradado parcial del elemento.
- Si no queremos que presenten ningún retardo (primero parámetro), debemos de poner un 0
- En este caso obligatoriamente hay que usar al menos dos parámetros
$(selector).fadeTo(velocidad,opacidad,funcion_callback);
Modo presentación : slide
- Estos métodos permiten visualizar elementos (suelen ser imágenes) a modo de presentaciones
- Tenemos tres métodos que podemos intuir su funcionamiento
$(selector).slideDown(speed,callback); $(selector).slideUp(speed,callback); $(selector).slideToggle(speed,callback);
<!DOCTYPE html> <html> <head> <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.0/jquery.min.js"></script> <script> $(document).ready(function(){ $("#cabecera").click(function(){ //Prueba aquí con las diferentes funciones de slide }); }); </script> <style> #panel, #cabecera { padding: 5px; text-align: center; background-color: #e5eecc; border: solid 1px #c3c3c3; } #panel { padding: 50px; } </style> </head> <body> <div id="cabecera">Haz un click aquí</div> <div id="panel">Hello world!</div> </body>
|
animimaciones: animate y stop
- Con este método podemos crear animaciones personalizadas
$(selector).animate({params},velocidad,callback);
- El parámetro params sigue la sintasix de css para especificar el cambio
- Lo que va a ocurrir con este método es que el elemento seleccionado va a pasar a tener la nueva descripción de css con la velocidad marcada con el parámetro velocidad
- Vamos a hacer una serie de ejemplos para verlo
- Hay que tener en cuenta que por ejemplo para cabiar la posicón de un elemnto en el css ésta no puede ser estática (static), sino que debe de ser relative, fixed, o absolute
<!DOCTYPE html> <html> <head> <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.0/jquery.min.js"></script> <script> //Aquí vamos a ir incluyendo para probar los ejemplos </script> </head> <body> <button>Iniciar animación</button> <p>Recuerda que para poder cambiar la posición de un elemnto, ésta no puede ser estática (static), sino que debe de ser relative, fixed, o absolute</p> <div style="background:#98bf21;height:100px;width:100px;position:absolute;"></div> </body> </html>
$("button").click(function(){ $("div").animate({left: '250px'}); });
$("button").click(function(){ $("div").animate({ left: '250px', opacity: '0.5', height: '150px', width: '150px' }); });
$("button").click(function(){ var div = $("div"); div.animate({left: '100px'}, "slow"); div.animate({fontSize: '3em'}, "slow"); });
$(document).ready(function(){ $("button").click(function(){ var div = $("div"); div.animate({height: '300px', opacity: '0.4'}, "slow"); div.animate({width: '300px', opacity: '0.8'}, "slow"); div.animate({height: '100px', opacity: '0.4'}, "slow"); div.animate({width: '100px', opacity: '0.8'}, "slow"); }); });
|
Anidando acciones
Concepto de funciones de callback
jQuery Callback jQuery Chaining