【发布时间】:2013-06-21 22:39:53
【问题描述】:
我当前使用 jQuery 的 AJAX 应用程序如下所示(简化):
$.ajax({
url: '/somefile',
timeout : timeOutVar,
success: function(data) {
console.log('success');
},
error: function(data) {
console.log('error');
}
});
我更新了该代码以使用progress 事件处理程序,如下所示。
$.ajax({
url: '/somefile',
timeout : timeOutVar,
success: function(data) {
console.log('success');
},
error: function(data) {
console.log('error');
},
xhr: function() {
var xhr = new window.XMLHttpRequest();
xhr.addEventListener("progress", function(evt){
console.log('progress');
}, false);
return xhr;
}
});
这在 Internet Explorer 10 和所有其他现代浏览器中都能完美运行。但是,在较旧的 Internet Explorer 版本中,我遇到了一个问题。 IE9、8、7 不调用progress 事件处理程序,而是在加载所有内容时调用success。
所以我想知道这些旧 Internet Explorer 版本是否存在兼容性问题。不幸的是,我找不到任何资源来准确定义XmlHttpRequest 的哪些部分在哪个 IE 版本中工作。有人知道这样的资源或代码中可能有什么问题吗?
【问题讨论】:
标签: javascript jquery internet-explorer xmlhttprequest progress