javascript-jQuery $.ajax扩展XDomainRequest进行中
作者:互联网
简短版本:
长版:
我想创建一个jQuery扩展,该扩展将一个progress方法添加到$.ajax对象,并且可以与IE8& IE9的XDomainRequest对象.
当前,使用上述插件,我只能为XMLHttpRequest对象定义进度事件回调处理程序.
但是,XDomainRequest还提供了一个onprogress事件.我基本上需要XDomainRequest的包装器.例如. progressEvent.length将与xdr.responseText.length相对应.
对于从何处开始的任何建议,我将不胜感激.
解决方法:
好吧,我解决了这个问题.我最终分叉了ajaxHooks,它通过ajax传输器实现了XDomainRequest.
我添加了对名为“ progress”的onprogress事件回调的支持,可以使用原始ajax对象定义该回调.
根据W3C标准,progressEvent.lengthComputable = false,因为我们无法获取内容的长度,因此progressEvent.total = 0;
请参见下面的示例:
$(document).ready(function(){
var download_url = YOUR_URL;
$.ajax({
url: download_url,
cache: false,
progress: function(jqXHR, progressEvent) {
console.log(progressEvent.loaded);
}
})
});
在这里看到我的ajaxHooks fork.
标签:xdomainrequest,javascript,jquery 来源: https://codeday.me/bug/20191031/1979435.html