JQuery, JQuery, JQuery…. qué buena elección!

October 13, 07 by Max Villegas

Mi viejo solía decir que el hombre es un animal de costumbre. Su clásico ejemplo era que compraba los cigarrillos siempre en el mismo lugar y abría la cajetilla siempre de la misma forma. Eso hasta que dejó de fumar después de un infarto. La moraleja es que, en ciertos casos, nos vemos forzados a cambiar nuestros hábitos por razones que generalmente no esperamos.

Por ejemplo, hace más de un año vengo programando con prototype y me encanta. Es una librería fácil de entender,  versátil y con muy buena documentción. Casi  todo lo que necesito, puedo hacerlo con muy poco código y con una elegancia que mis script de php envidian.

Por ejemplo con una sola línea se puede oultar todos los divs cuya clase es hide:

$$(‘div[class=hide]‘).map(function(e){$(e.id).show();});

Inlcuso, con la misma facilidad, se puede ocultar cualquier elemento que tenga dicha clase:

document.getElementsByClassName(‘hide’).map(function(e){$(e.id).hide();});

No quería cambiarme de Prototype… Mmm! En realidad, sí quería, pero no había encontrado una excusa potente como para hacerlo.  Para no ser lato con la historia, la excusa llegó y trajo consigo a JQuery.  Algunas de las maravillas con las que me he topado son la siguientes:

jQuery(‘div.panel’)
Todos los div class=“panel”
jQuery(‘p#intro’)
El paragraph con id=“intro”
jQuery(‘div#content a:visible’)
Todos los links visibles dentro del div con id=“content”
jQuery(‘input[@name=email]‘)
Todos los input fields de name=“email”
jQuery(‘table.orders tr:odd’)
“odd” numbered rows in a table with class “orders”
jQuery(‘a[@href^="http://"]‘)
Todos los links externos (los que empiezan con http://)
jQuery(‘p[a]‘)
Todos los paragraphs que contienen uno o más links

Y eso no es todo, puedes ver una lista más detallada en este post de Simon Willson

Posts relacionados:

  1. Chuletas para JQuery
  2. Comparación entre jQuery y Prototype
  3. La maravilla de JSON vs XML
  4. Lo nuevo de jquery 1.2
  5. El drama de getElementsByClassName

blog comments powered by Disqus