2008-12-30 47 views
25

Deseo obtener el progreso de mi solicitud AJAX: cuánto se ha descargado hasta ahora de cuánto es el archivo. Por ejemplo, estoy descargando una imagen grande con AJAX para poder poner el contenido en una url DATOS (esta puede no ser la mejor manera de hacerlo, es solo un ejemplo.)Página AJAX Descargar progreso

Por lo tanto, realizo la solicitud AJAX a algún host sobre el que no tengo control (flickr), e informar el progreso al usuario. No puedo encontrar una manera de hacerlo sin un script del lado del servidor o algo así. Preferiblemente la solución usaría JQuery, porque eso es lo que uso para mi sitio web. Gracias! Isaac

+0

Esa * no es * la mejor manera de mostrar el progreso de descarga de la imagen, por lo que ayudaría saber lo que ** desea ** hacer ... –

+1

Esto [threadoverflowflow] [1] discute el mismo problema. [1]: http://stackoverflow.com/questions/76976/how-to-get-progress-from-xmlhttprequest –

Respuesta

13

Hasta donde yo sé, la función $ .ajax() no tiene soporte para "bytes cargados". Solo tiene eventos de inicio y completos, ningún evento de progreso.

Encontré this thread detallando un intento, pero aparentemente el código funciona en varios navegadores pero no en IE. La sugerencia que hacen es mostrar el progreso en otros navegadores, y un simple mensaje de "carga ..." para IE.

Tenga en cuenta que hay varias discusiones similares en el mismo sitio, por lo que explore el panel izquierdo para ver otros métodos.

2

Algunos navegadores brindan soporte para eventos de estado de descarga en los que puede realizar un seguimiento de su progreso (sé que 3.5 o 3.5).

Esto se hace por ajax XHR.

se puede leer más here y here

Además, es posible dividir un archivo en una matriz (digamos lo dividimos en 10 piezas),

ahora enviar 1peace, y la sucesión regrese después, progreso = 10%, etc. ...

+2

Pero dividir el archivo es una muy mala idea ya que los apretones de manos tardan mucho en HTTP. –

+0

Los enlaces no son una respuesta. –

+0

Si bien este enlace puede responder a la pregunta, es mejor incluir las partes esenciales de la respuesta aquí y proporcionar el enlace de referencia. Las respuestas de solo enlace pueden dejar de ser válidas si la página vinculada cambia. - [De la opinión] (/ reseña/mensajes de baja calidad/17557649) – Styx

Cuestiones relacionadas