miércoles, 9 de mayo de 2012

jQuery pushevent: Cambiando el orden de los eventos

Los eventos en jQuery, al igual que en JavaScript, son ejecutados en el mismo orden por el cual fueron creados. A priori no es posible cambiar el orden de ejecución de los eventos una vez que estos son creados, lo cual puede mermar la escalabilidad cuando se ha de manejar un entorno con numerosos eventos.

Como bien dije, de primera mano y bajo las condiciones que nos brinda jQuery, alterar el orden de ejecución de los eventos a nuestro antojo puede suponer una tarea laboriosa, pero gracias a jQuery.pushevent será coser y cantar.

¿Qué es jQuery pushevent?

Es propiamente un plugin de jQuery que nos permitirá cambiar el orden de ejecución de los eventos muy fácilmente y sin ninguna complicación.

¿Cómo se utiliza?

El plugin consta de una única función con tres argumentos, uno de los cuales es opcional.

$(selector).pushEvent(eventNames, selector, position);
El primer selector hace referencia al elemento o elementos sobre los cuales se desea alterar el orden de los eventos. El primer parámetro de la función (eventNames) es el nombre del evento, que pueden ser múltiples separados por espacios, y siempre utilizando un marcador (namespace) para poder localizar el evento, de lo contrario lo ignorará (http://api.jquery.com/event.namespace/).

El segundo parámetro es otro selector y solo será necesario si queremos actuar sobre un evento delegado. Si es así, el primer selector será el contexto, y este segundo selector será el elemento o elementos en cuestión que pertenece al contexto anterior (http://api.jquery.com/delegate/).

Por último, tenemos el parámetro posición, que será un número entero y servirá para trasladar los eventos especificados a dicha posición. Por defecto, si no se define la posición ésta será cero, siendo cero la primera posición, y por consiguiente el primer evento en ser ejecutado. También acepta valores negativos, siendo por ejemplo, -1 la última posición.

Podéis acceder a una demostración online para ver su funcionamiento (http://jsfiddle.net/yeikos/uTQT8/), o si prefereis el código fuente de la demostración, se encuentra en el repositorio de jQuery.pushevent, como demo.html (https://github.com/yeikos/jquery.pushevent/blob/master/demo.html).

Código fuente: https://raw.github.com/yeikos/jquery.pushevent/master/jquery.pushevent.js
Repositorio Github: https://github.com/yeikos/jquery.pushevent

Descarga (versión comprimida)https://raw.github.com/yeikos/jquery.pushevent/master/jquery.pushevent.min.js

No hay comentarios:

Publicar un comentario en la entrada