Alfredo Artiles nos vuelve a deleitar con un espectacular script con el que aprovecharemos al máximo los recursos del usuarios y los de nuestro servidor haciendo peticiones Ajax solo cuando estemos en una aplicación web.
El script montado para funcionar con MooTools, se basa en que cuando cambiamos de pestaña el navegador continua ejecutando nuestros scripts de actualización mediante Ajax. Estas llamadas consumen recursos sin ser necesarios, ya que estamos en otra pestaña. Alfredo ha optado por controlar el movimiento del ratón y teclado sobre la página y en caso de pasar un tiempo sin que este actúe sobre nuestra página cancelará nuestras peticiones Ajax.
Modo de empleo
var idleSpy = new IdleSpy({
idleTime: 300000
});
idleSpy.addEvents({
'idle': function() { /* on user idle code here */ },
'back': function() { /* on user back code here */ }
});
idleSpy.start();
Básicamente lo que nos ofrece el script es la posibilidad de definir un tiempo de espera antes de activar el evento idle
en el que definiremos que hacer cuando llevemos X segundos sin actuar sobre nuestra página. Posteriormente, definiremos el evento back
que se encargará de reestablecer todo lo que hayamos parado previamente.
¿Para jQuery?
Los que usamos jQuery tambien tenemos un plugin que nos permite realizar la misma tarea. jQuery idleTimer, nos permite definir ambos eventos.
// timeout en milliseconds; defaults 30000
$.idleTimer(10000);
$(document).bind("idle.idleTimer", function(){
// ....
});
$(document).bind("active.idleTimer", function(){
// ....
});
$.idleTimer('destroy');
Nicholas C. Zakas, implementó hace ya tiempo una versión para YUI que los desarrolladores que usen pueden tener en cuenta.
Actualizo (11:58)
Alfredo me avisa de que ha encontrado uno para funcionar con Prototype.
3 comentarios, 0 referencias
+
#