= { ... }

miércoles, mayo 10, 2006

Revisión

Dustin Diaz acaba de publicar la entrada número 11 en su podcast. En esta entrada hace una revisión de las mejores 10 funciones que propuso en Noviembre de 2005, que conforman su commons.js.

Lo estoy escuchando ahora, parece ser que se ha encariñado con las YUI de Yahoo.

Entre las funciones que se caen tras la revisión, esta precisamente addEvent, la cual os la he comentado en la entradas anteriores. No es que se caiga, pero se opta por usar la gestión de eventos de las YUI, o por lo menos recomienda usar la mejor implementación que se podría hacer, disponible aqui.

Os pego el código de la nueva forma de implementar la asociación de eventos:

function addEvent( obj, type, fn )
{
if (obj.addEventListener)
obj.addEventListener( type, fn, false );
else if (obj.attachEvent)
{
obj["e"+type+fn] = fn;
obj[type+fn] = function() {
obj["e"+type+fn]( window.event ); }
obj.attachEvent( "on"+type, obj[type+fn] );
}
}

function removeEvent( obj, type, fn )
{
if (obj.removeEventListener)
obj.removeEventListener( type, fn, false );
else if (obj.detachEvent)
{
obj.detachEvent( "on"+type, obj[type+fn] );
obj[type+fn] = null;
obj["e"+type+fn] = null;
}
}


Se ha simplificado el código y se ha añadido la función removeEvent para pode desligar un evento de un objeto.

La próxima entrada os presentaré, una aplicación real para JSON y el commons.js. Solo adelanto un poco : ZEBRA!

newuni @ delicious