Ver Mensaje Individual
  #1 (permalink)  
Antiguo 05/05/2016, 01:55
schattenburg
 
Fecha de Ingreso: junio-2007
Mensajes: 298
Antigüedad: 16 años, 11 meses
Puntos: 5
Ajax: Abortar todos los Ajax activos

Hola a todos:

He desarrollado un proyecto y en uno de los apartados hace muchas llamadas Ajax y todo va perfecto. El problema es que una vez que he entrado en ese apartado y me voy a otro apartado (el cual no tiene ajax ni nada especial) tarda muchísimo en cargar esa otra página, por lo menos 10 segundos.

Viendo la consola veo que el problema podría ser que quedan pendiente muchas cosultas Ajax por lo que he creado una función que se llama siempre que se cambie de página:

function abortarAjax() {
jQuery.each(xhrPool, function(i){
xhrPool[i].abort();
});
}

Y efectivamente viendo la consola una vez que se cambia de página todas las peticiones de Ajax se abortan y se cancelan al momento, pero aún así sigue tardando unos 10 segundos al cargar la nueva página. Es como si aparte de abortar la petición hubiera que hacer algo más, como eliminarla o algo así para que desaparezca de la consola. He probado varias cosas pero nada hace que cargue más rápido.

¿Alguna idea? ¿Qué residuos pueden quedar para que vaya tan lento cuando cambias de página?

Muchas gracias por adelantado.