¿QUEEZEPTO?

<script src=”my own” title=”que es esto”>

Ehm, si… Así debería decir, pero a veces es bueno escribir con mala hortografía para hacer énfasis y que le paren a uno. Pero no quiero que me paren a mí, párenle a Zepto.js.

Zepto.js es una librería similar a jQuery, pero se describe a si misma como “el primo ligero y rápido de jQuery”. La idea no es reemplazar a la librería, sino demostrar lo que siempre digo, que ninguna tecnología es la Panacea que va a resolver todos los problemas del mundo, siempre es bueno probar alternativas.

Zepto se perfila como una librería Lean, desarrollada a un tercio del peso en KB de jQuery pero corriendo 3 veces más rápido, optimizado para móviles por defecto y una de las características que más me agradan de esta librería es que NO provee soporte para Internet Explorer menor a la versión 10+ (yujuuuu!!! 😀 )

juasjuasjuas...

juas juas juas juas…

La granularidad con la que Zepto está desarrollada me sorprende, en especial porque algunas funcionalidades que están por defecto incluidas en jQuery, tales como llamadas asíncronas via AJAX y manejo de eventos, están en módulos separados (bien específicados en su documentación) que pueden estar opcionales en un desarrollo con Zepto.

Es decir que nos deja la manipulación DOM no transversal de un documento HTML nada más descargar e incluir la librería zepto.js o zepto.min.js en nuestros proyectos. La buena noticia es que [casi] todas las funciones que posee jQuery para manipulación del DOM funcionan del mismo modo con Zepto.

La ¿mala? noticia es que hay “detalles” que la hacen diferente:

  • Zepto NO itera sobre atributos id ('#'), lo cual no es malo si se supone que un atributo id debe ser ÚNICO en el DOM, es decir que debes utilizar otra forma de iterar sobre elementos (usar clases CSS o elementos de lista como 'li' pueden ser opciones válidas y saludables para el código 🙂
  • Zepto NO posee soporte a pseudo-selectores CSS (del tipo ':visible' o ':checked'), lo que quiere decir que debes ingeniarte una forma diferente de verificar si un checkbox está checked (usar eventos, por ejemplo). Aunque hay un módulo de Zepto que provee soporte parcial a algunos pseudo-selectores.
  • Zepto NO soporta formas abreviadas de campos input (como 'input:text' o 'input:number'), esto es consecuencia de no soportar pseudo-selectores completamente, entonces para seleccionar a todos los input de tipo text se debe usar la forma larga: 'input[type=text]' para referenciarlos.

Y es sólo el comienzo *risa malvada* 😉

</script>

Anuncios