Complemento jQuery ajaxreadystate
La implementación de jQuery AJAX es algo limitada porque no proporciona una forma de responder a los eventos readystatechange que se activan durante la solicitud AJAX. La documentación de la API jQuery.ajax en realidad establece lo siguiente.
Sin embargo, no se proporciona ningún mecanismo
onreadystatechange, ya quedone,fail,alwaysystatusCodecubren todos los requisitos imaginables.
Si bien esta afirmación es cierta para la mayoría de los casos de uso, ¿qué sucede si desea acceder a los encabezados de respuesta o al código de estado antes de que se complete toda la solicitud, o acceder al cuerpo de la respuesta mientras se transmite?
Evidentemente, jQuery no proporciona esta funcionalidad debido a problemas de compatibilidad del navegador, por lo que este complemento agrega esta funcionalidad adicional para los navegadores que admiten estas características (consulte las notas de compatibilidad a continuación).
Este complemento funciona agregando un nuevo método jQuery.ajaxreadystate , que actúa como un contenedor para jQuery.ajax , extendiendo la funcionalidad y actualizando el objeto jqXHR para eliminar las limitaciones y actualizar las propiedades a medida que cambia readyState .
Usas jQuery.ajaxreadystate tal como lo harías con jQuery.ajax , excepto que tienes un método adicional que puedes definir, el método readystate .
jQuery . ajaxreadystate ( {
readystate : function ( jqXHR , readyState ) {
}
} ) ; Este método se activará cada vez que la solicitud active un evento readystatechange y pasará el objeto jqXHR actualizado y el readyState actual.
Puede descargar la última versión estable y minimizada desde la sección de versiones de este repositorio. Alternativamente, puede clonar la descarga del repositorio desde un administrador de paquetes.
###Totalmente compatible
Los siguientes navegadores son totalmente compatibles.
###Parcialmente compatible
Los siguientes navegadores son parcialmente compatibles debido a limitaciones técnicas del propio navegador. Se observan problemas de compatibilidad.
responseText no está disponible hasta que readyState sea 4 .readystatechange para readyState 3 en algún momento durante la transferencia.responseText no está disponible hasta que readyState sea 4 .status y statusText no se actualizan hasta que readyState sea 4 .getAllResponseHeaders y getResponseHeader devuelven null hasta que readyState sea 4 .readystate solo se activa para readyState 1 .responseText no está disponible hasta que readyState sea 4 .status y statusText no se actualizan hasta que readyState sea 4 .getAllResponseHeaders y getResponseHeader devuelven null hasta que readyState sea 4 .getAllResponseHeaders y getResponseHeader devuelven null hasta que readyState sea 3 .getAllResponseHeaders y getResponseHeader devuelven null hasta que readyState sea 3 .readystatechange para readyState 3 en algún momento durante la transferencia.status y statusText no se actualizan hasta que readyState sea 3 .readystatechange para readyState 3 en algún momento durante la transferencia.status y statusText no se actualizan hasta que readyState sea 3 .readystatechange para readyState 3 en algún momento durante la transferencia.getAllResponseHeaders y getResponseHeader devuelven null hasta que readyState sea 4 .Los navegadores más antiguos que los enumerados no fueron probados, pero pueden ser parcial o totalmente compatibles.
Este complemento es compatible con jQuery 1.5+ y jQuery 2.0.0+.
Para crear una compilación minimizada, ejecute este comando desde el directorio raíz de este repositorio.
$ npm run buildSi encuentra un error o tiene problemas de compatibilidad no documentados anteriormente, abra un ticket en la sección de problemas de este repositorio.
Ver LICENCIA.txt
Si esta licencia no funciona para usted, no dude en ponerse en contacto conmigo.
Si encuentra útil mi software, considere hacer una modesta donación en mi sitio web alexomara.com.