Las funciones callback en jQuery
14/11/2009Todo aquel que esté aprendiendo a utilizar este framework seguro que, en repetidas ocasiones, ha echado mano de la documentación de jQuery a través de su página web (si alguien no lo ha hecho creo que debería empezar ya). Navegando entre sus muchas opciones puede que se haya encontrado con un concepto que le suene desconocido. Estoy hablando del vocablo “callback”.
Según la documentación de jQuery, una función callback es una función pasada como argumento de otra función y su ejecución se realizará después de que el elemento padre termine de realizar sus acciones correspondientes. Dicho de esta forma parece un poco confuso, pero viendo un par de ejemplos podremos apreciar el resultado.
El objetivo de nuestros ejemplos es ocultar un bloque de texto pulsando en un botón y, después de esto, ocultar el botón sobre el que hemos pinchado.
La primera aproximación se ha realizado sin aplicar ninguna función de callback. La ejecución de los efectos se realiza de forma paralela consiguiendo un efecto totalmente distinto al que buscamos (recordemos que primero queremos ocultar el bloque de texto y, después, el botón).
»Ejemplo sin utilizar una función de callback
Si observamos el segundo ejemplo podemos comprobar la funcionalidad deseada. El bloque texto se oculta y, después de esto, es el propio botón el que desaparece.
»Ejemplo utilizando una función de callback
El código javascript asociado a este último ejemplo es el siguiente:
<script language="JavaScript"> $(document).ready(function() { $("#btn").click(function(){ $("#content").hide('slow', function(){ $("#btn").hide('slow'); }); }); }); </script>
Espero que estas pequeñas demostraciones hayan servido para comprender con un poco más de detalle algunos de los aspectos que jQuery nos brinda.
Puede que te interese
2 comentarios »
Deja un comentario
Este blog funciona gracias a WordPress con el theme GimpStyle
© bitelemental. Todos los derechos reservados.
Gracias por el post! ^^
mola mucho ver los ejemplos didácticos
saludos!
@Hydrus: No hay nada mejor para un buen aprendizaje que la utilización de ejemplos prácticos.
Gracias por tu comentario.
Saludos.