Diversión con jQuery Templating y AJAX

En este tutorial, veremos cómo el sistema de plantillas beta de jQuery se puede utilizar de manera excelente para desacoplar completamente nuestro HTML de nuestros scripts. También echaremos un vistazo rápido al módulo AJAX completamente renovado de jQuery 1.5.


Lo que está templando?

La plantilla es una novedad (aún está en versión beta, por lo que es probable que cambie ligeramente a medida que madura y migra hacia el núcleo, pero ha estado disponible durante la mayor parte del año), una función jQuery enormemente poderosa que nos permite especificar una plantilla para usar al crear estructuras DOM a través de scripts, algo que estoy seguro de que todos hacemos casi a diario.

Siempre ha sido increíblemente fácil cuando se usa jQuery para hacer algo como esto:

 $ ("# someElement"). children (). each (function () $ (this) .wrap ($ ("
")););

Las plantillas nos permiten eliminar estos fragmentos de código HTML basados ​​en cadenas de nuestro comportamiento..

Esto simplemente envolverá cada elemento hijo de #someElement en un nuevo

elemento. No hay nada particularmente malo en hacer esto; Es perfectamente válido y funciona bien en innumerables situaciones. Pero, eso es HTML en nuestro script, contenido mezclado con comportamiento. En el ejemplo simple anterior, no es un gran problema, pero los scripts del mundo real podrían contener muchos más fragmentos de código HTML, especialmente cuando se crean estructuras DOM con datos obtenidos a través de una solicitud AJAX. Todo puede convertirse rápidamente en un desastre..

La creación de plantillas nos permite eliminar estos fragmentos de código HTML basados ​​en cadenas de nuestra capa de comportamiento y volver a colocarlos firmemente donde pertenecen en la capa de contenido. Mientras lo hacemos, también podemos ver una de las características AJAX súper geniales de jQuery 1.5: objetos diferidos..


Empezando

En este ejemplo, crearemos un widget de Twitter que no solo cargará algunos de nuestros tweets recientes, sino que también incluirá algunos amigos, seguidores y sugerencias. Escogí Twitter para este ejemplo porque genera JSON en el formato que requerimos; es facil y divertido.

Entonces empecemos; el propio widget se construirá a partir del siguiente marcado subyacente:

    jQuery, AJAX y plantillas          

Estamos utilizando HTML5 y hemos incluido el simplificado. DOCTYPE y juego de caracteres meta elemento. Enlazamos con una hoja de estilo personalizada, que crearemos en un momento, y para admitir las versiones actuales de IE8 y versiones inferiores, usamos un comentario condicional para vincular a las páginas alojadas en Google. html5shiv expediente.

Utilizando aparte

Este widget probablemente iría a una barra lateral, y sería distinto del contenido real de la página en la que aparece, pero relacionado con el sitio en su conjunto. Con eso en mente, siento una