jQuery 1.3

Leo en aNieto2K que ha salido a la luz la versión 1.3 de jQuery. Entre las novedades nos encontramos con un nuevo selector de elementos (Sizzle), delegación de eventos, el elemento Event, inyección HTML reescrita.
Andrés lo cuenta muy bien en su blog.
jQuery 1.3
Vía / aNieto2k

Tutorial para crear un plugin jQuery

En varias ocasiones he mencionado plugins para jQuery, pero en esta ocasión se trata de cómo hacer un plugin para jQuery.

Independientemente de la complejidad propia del plugin, crear un plugin para jQuery es bastante sencillo, y en el tutorial nos indican paso a paso cómo desarrollarlo:

  • Primeros pasos
  • Propiedades de configuración
  • Constructor
  • Métodos adicionales

The Definitive Guide to Creating a Practical jQuery Plugin

Consejos para jQuery

Últimamente hablo mucho de jQuery, y no es para menos, ya que este framework de Javascript es muy bueno y la gente realiza grandes plugins que nos ayudan en nuestros desarrollos. En este caso se trata de varios consejos que nos serán muy útiles a la hora de desarrollar:

  • Carga la librería desde Google Code
  • Almacena en variables los selectors que vayas a usar en varias ocasiones
  • Evita la manipulación DOM lo máximo que puedas, es mejor realizar una llamada “gorda” que varias pequeñas
  • Usa preferiblemente IDs en vez de nombres de clase cuando realices búsquedas
  • Realiza la captura de eventos correctamente, muchas capturas suele ser ineficiente
  • Usa los nombres de clase para guardar el estado de un objeto
  • Incluso mejor que el anterior, usa el método data() para guardar datos en un objeto
  • Aprende a crear tus propios selectores
  • Usa noConflict() para renombrar el objeto jQuery y no tener problemas con otras librerías
  • Aprende a controlar cuando se cargan las imágenes
  • Usa .lenght en un selector para saber si un objeto existe
  • Añade una clase al objeto HTML para modificar elementos por CSS cuando el documento se haya cargado

Improve your jQuery – 25 excellent tips

Vía / Intenta

Uso correcto de los selectores en jQuery

Quien dice en jQuery dice en cualquier otro framework de javascript o lenguaje de programación, el tema es no malgastar recursos. jQuery permite encontrar elementos mediante la clase, por ejemplo:

$('.boton')

Esto es muy cómodo, pero también tiene mal rendimiento, ya que el script debe buscar en todos los elementos HTML y encontrar aquél que tenga class=”boton”. ¿Cómo deberíamos usar los selectores?.:

  • Si el elemento tiene un ID, hay que usar el ID, pero tampoco es plan de añadir ids a todos los elementos.
  • Indica el tipo de elemento, por ejemplo $(‘input.boton’), así limitaremos la búsqueda a los elementos input. Si no solo hay un tipo de elemento, sino varios, los indicaremos todos: $(‘input.boton, a.boton’)
  • Guía a jQuery por la ruta de elementos que puede seguir: $(‘#formulario .boton’)
  • Usa otro elemento para limitar la búsqueda: $(‘#formulario’).find(‘.boton’)

Avoid Bare Class Selectors In jQuery

Yii: framework PHP

Yii es un framework PHP desarrollado por el creador de Prado que está centrado en el desarrollo de aplicaciones web2.0 (integrando jQuery) y presume de ser una de las más rápidas y con mejor rendimiento (sobre todo usando APC).

Al igual que muchos otros frameworks, viene con las siguientes características:

  • MVC
  • ADO y Active Record
  • Validación de formularios
  • Widgets web2.0
  • Autenticación
  • Themes
  • Web Services
  • Internacionalización
  • Cache
  • Control de errores y logs
  • Seguridad
  • Generacion automática de código
  • OOP

Las pruebas de rendimiento indican que es muy rápido, sobre todo usando APC, pero bueno, las pruebas siempre las tiene que hacer alguien externo.

Yii Framework

Laboratorio: input password estilo iPhone con jQuery

Una de las cosas que mas me gusta del iPhone/iPod Touch es que cuando estás metiendo una password ves el último carácter que has tecleado.

Por ello he hecho este pequeño plugin para jQuery (inacabado) que realiza la misma función. Muestra la última letra tecleada y oculta el resto. Para conseguirlo lo que he hecho es transformar el input en tipo text y guardar lo que se va tecleando.

$.fn.hidder = function() {
return this.filter(':password').each(function() {
this.config = {
delay: 1,
value: '',
char: '•'
}
this.type = "text";
this.config.value = this.value;
this.value = this.value.replace(/./g, this.config.char);
$(this).bind('keydown', function(evt) {
switch(evt.which) {
case 8:
this.config.value = this.config.value.substring(0, this.config.value.length-1);
this.value = this.value.substring(0, this.value.length-1);
break;
}
});
$(this).bind('keyup', function(evt) {
if (this.value.length > this.config.value.length) {
var last = this.value.substring(this.value.length-1);
this.config.value += last;
this.value = this.value.substring(0, this.value.length-1).replace(/./g, this.config.char)+last;
var elem = this;
setTimeout(function() {elem.value = elem.value.replace(/./g, elem.config.char);}, elem.config.delay*1000);
}
});
});
}

Le faltan muchas cosas por hacer, y fallan otras, por ejemplo tratar el pulsar los cursores, restaurar el valor antes del submit del formulario, ocultar el texto despues del formulario, …

Yo personalmente no lo usaría en mi página ni loco, pero para experimento no está mal.

Twitter ticker para jQuery

TwitterTicker es un plugin para jQuery que nos permite añadir un ticker de los ultimos updates que se hacen en un cuenta de Twitter. Las entradas se irán mostrando una a una en el mismo espacio mediante fading.

Su uso es muy sencillo, se crea una capa contenedora y se ejecuta el siguiente código:

$(document).ready(function() {
$("#twitter").twitterTicker({
userName: "jquery",
numTweets: 5,
delay: 4000,
loaderText: "Loading tweets..."
});
});

A jQuery TwitterTicker Plugin

Vía / Script & Style

Algunos scripts para jQuery

He encontrado en Script & Style algunos scripts/pluigns para jQuery que son interesantes:

QuickSearch: filtro de contenido con jQuery

QuickSearch es una librería bastante interesante que permite filtrar el contenido de elementos que contengan cierto texto. Tan solo hay que pasar una lista de elemtos y estos los filtrará para mostrar solo aquellos que cumplan cierto filtro de texto.
Se puede pasar lista de elementos (ul), párrafos, tablas, … Se le puede indicar el texto o la imagen que muestre que se está filtrando datos, indicar retraso, añadir clases css, …
QuickSearch
Vía / WebAppers