DMa*_*yer 11 ajax html5 xmlhttprequest-level2
这个代码块有什么区别:
var xhr = new XMLHttpRequest();
xhr.upload.addEventListener("progress", uploadProgress, false);
xhr.addEventListener("load", uploadComplete, false);
xhr.addEventListener("error", uploadFailed, false);
xhr.addEventListener("abort", uploadCanceled, false);
xhr.open("POST", "upload_url");
xhr.send(some_form_data);
Run Code Online (Sandbox Code Playgroud)
还有这个:
var xhr = new XMLHttpRequest();
xhr.upload.addEventListener("progress", uploadProgress, false);
xhr.upload.addEventListener("load", uploadComplete, false);
xhr.upload.addEventListener("error", uploadFailed, false);
xhr.upload.addEventListener("abort", uploadCanceled, false);
xhr.open("POST", "upload_url");
xhr.send(some_form_data);
Run Code Online (Sandbox Code Playgroud)
我已经在博客和其他SO帖子中看到了这两种实现,但没有人解释为什么他们使用其中一个.我现在能找到的唯一区别是后者在默认的Android浏览器上不起作用,而前者似乎只能处理所有事情.
根据关于XMLHttpRequest的w3c规范.http://www.w3.org/TR/XMLHttpRequest/#the-upload-attribute
如前所述,每个XMLHttpRequest对象都有一个关联的XMLHttpRequestUpload对象.
下载和上传传输都存在进度事件.下载事件在XMLHttpRequest对象本身上触发,如上面的示例所示.上传事件在XMLHttpRequest.upload对象上触发
| 归档时间: |
|
| 查看次数: |
14067 次 |
| 最近记录: |