我在我的项目中使用 jQuery 表单插件(jquery.form.js)。它在 Chrome/FF 中运行良好,但在 IE8/9 中,uploadProgress 回调未调用。甚至官网http://jquery.malsup.com/form/progress.html中的演示也没有更新 IE8/9 中的上传进度。有什么提示吗?谢谢。
问问题
2483 次
1 回答
8
从来源:
if (options.uploadProgress) {
// workaround because jqXHR does not expose upload property
s.xhr = function() {
var xhr = jQuery.ajaxSettings.xhr();
if (xhr.upload) {
xhr.upload.onprogress = function(event) {
var percent = 0;
var position = event.loaded || event.position; /*event.position is deprecated*/
var total = event.total;
if (event.lengthComputable) {
percent = Math.ceil(position / total * 100);
}
options.uploadProgress(event, position, total, percent);
};
}
return xhr;
};
}
它使用了 ie8/9 不支持的 HTML5 特性:
>> "upload" in new XMLHttpRequest
false
于 2012-04-19T03:22:30.720 回答