jQuery ajaxreadystate 插件
jQuery AJAX 实现有一定的局限性,因为它不提供响应 AJAX 请求期间触发的readystatechange事件的方法。 jQuery.ajax API 文档实际上说明了以下内容。
然而,没有提供
onreadystatechange机制,因为done、fail、always和statusCode涵盖了所有可能的要求。
虽然此声明对于大多数用例都是正确的,但如果您想在整个请求完成之前访问响应标头或状态代码,或者在流式传输时访问响应正文,该怎么办?
显然,由于浏览器兼容性问题,jQuery 不提供此功能,因此该插件为支持这些功能的浏览器添加了此额外功能(请参阅下面的兼容性说明)。
该插件的工作原理是添加一个新方法jQuery.ajaxreadystate方法,该方法充当jQuery.ajax的包装器,扩展功能并更新jqXHR对象以消除限制并在readyState更改时更新属性。
您可以像使用jQuery.ajax一样使用jQuery.ajaxreadystate ,只不过您可以定义一种额外的方法,即readystate方法。
jQuery . ajaxreadystate ( {
readystate : function ( jqXHR , readyState ) {
}
} ) ;每次请求触发readystatechange事件时都会触发此方法,并将传入更新的jqXHR对象和当前的readyState 。
您可以从此存储库的发布部分下载最新的稳定和精简版本。或者,您可以从包管理器克隆存储库下载。
###完全支持
完全支持以下浏览器。
###部分支持
由于浏览器本身的技术限制,部分支持以下浏览器。注意到兼容性问题。
readyState为4之前, responseText不可用。readyState 3的一个readystatechange事件。readyState为4之前, responseText不可用。status和statusText在readyState为4之前不会更新。getAllResponseHeaders和getResponseHeader返回null直到readyState为4 。readyState 1时才会触发readystate回调。readyState为4之前, responseText不可用。status和statusText在readyState为4之前不会更新。getAllResponseHeaders和getResponseHeader返回null直到readyState为4 。getAllResponseHeaders和getResponseHeader返回null直到readyState为3 。getAllResponseHeaders和getResponseHeader返回null直到readyState为3 。readyState 3的一个readystatechange事件。status和statusText在readyState为3之前不会更新。readyState 3的一个readystatechange事件。status和statusText在readyState为3之前不会更新。readyState 3的一个readystatechange事件。getAllResponseHeaders和getResponseHeader返回null直到readyState为4 。未测试比列出的版本更旧的浏览器,但可能部分或完全支持。
该插件与 jQuery 1.5+ 和 jQuery 2.0.0+ 兼容。
要创建缩小的构建,请从此存储库的根目录运行此命令。
$ npm run build如果您发现错误或遇到上面未记录的兼容性问题,请在此存储库的问题部分下打开一个票证。
请参阅 LICENSE.txt
如果此许可证不适合您,请随时与我联系。
如果您发现我的软件有用,请考虑在我的网站 alexomara.com 上捐款。