【发布时间】:2011-07-06 15:42:29
【问题描述】:
使用 HTML5 的文件 API,上传是通过 XMLHttpRequest 中名为 upload 的对象进行的。 This 是我正在使用的教程(以及 Google cache mirror,因为它目前已关闭)。这是相关部分:
// Uploading - for Firefox, Google Chrome and Safari
xhr = new XMLHttpRequest();
// Update progress bar
xhr.upload.addEventListener("progress", function (evt) {
如您所见,要跟踪上传进度,XMLHttpRequest 对象有一个名为 upload 的属性,我们可以添加一个事件处理程序。
我的问题是:有 jQuery 等价物吗?。我试图让代码尽可能干净并尽可能兼容跨浏览器,因为只要 Microsoft 认为这是个好主意(尽管听起来像 it will be in 2012 or 2013)。
【问题讨论】:
-
您是在寻找 jQuery 插件还是想了解 jQuery XHR 包装器是否支持此功能?
-
@justkt 我正在寻找 jQuery 中的内置选项,不过,如果不可用,插件会很好。谢谢。
-
如果您已经在使用 HTML5,那么您并没有认真考虑跨浏览器的兼容性,因此只需针对有效的内容进行构建,并有一条消息告诉人们使用其中一种工作浏览器。 CSS3 也是如此。
-
IE9 同时支持 XMLHttpRequest 和 addEventListener 方法。我认为您应该测试
xhr.upload是否存在并完成它。无需使用 jQuery 包装您的代码。 -
@Endophage 好的,感谢您的评论。当然,我有一个备用方案。
标签: javascript jquery ajax upload