Jquery 使用HTML5上传文件时显示简单的GIF

Jquery 使用HTML5上传文件时显示简单的GIF,jquery,html,file-upload,progress-bar,gif,Jquery,Html,File Upload,Progress Bar,Gif,使用HTML5上传文件,是否可以检查文件是否正在上传? 最后,我想显示一个简单的gif像一个进度条,但没有任何 难度计数器/数学,所以只需像这样一个简单的gif 当文件上传后,我想再次隐藏它。我想知道的是; 如何“检查”文件是否正在上载 代码(HTML5) .拇指{ 高度:75px; 边框:1px实心#000; 利润率:10px 5px 0; } 功能手柄文件选择(evt){ var files=evt.target.files;//文件列表对象 //循环浏览文件列表并将图像文件渲染为缩略

使用HTML5上传文件,是否可以检查文件是否正在上传? 最后,我想显示一个简单的gif像一个进度条,但没有任何 难度计数器/数学,所以只需像这样一个简单的gif

当文件上传后,我想再次隐藏它。我想知道的是; 如何“检查”文件是否正在上载

代码(HTML5)


.拇指{
高度:75px;
边框:1px实心#000;
利润率:10px 5px 0;
}
功能手柄文件选择(evt){
var files=evt.target.files;//文件列表对象
//循环浏览文件列表并将图像文件渲染为缩略图。
for(var i=0,f;f=files[i];i++){
//仅处理图像文件。
如果(!f.type.match('image.*')){
继续;
}
var reader=new FileReader();
//闭包以捕获文件信息。
reader.onload=(函数(文件){
返回函数(e){
//渲染缩略图。
var span=document.createElement('span');
span.innerHTML=['').join('');
document.getElementById('list').insertBefore(span,null);
};
})(f) );
//作为数据URL读入图像文件。
reader.readAsDataURL(f);
}
}
document.getElementById('files').addEventListener('change',handleFileSelect,false);
我不确定这样做的“正确”方法。但是我在上传页面上使用Iframe,然后在上传工作时,我可以在其中放置一个gif。

参考此内容并使用XHR的进度事件。
    <style>
  .thumb {
    height: 75px;
    border: 1px solid #000;
    margin: 10px 5px 0 0;
  }
</style>

<input type="file" id="files" name="files[]" multiple />
<output id="list"></output>

<script>
  function handleFileSelect(evt) {
    var files = evt.target.files; // FileList object

    // Loop through the FileList and render image files as thumbnails.
    for (var i = 0, f; f = files[i]; i++) {

      // Only process image files.
      if (!f.type.match('image.*')) {
        continue;
      }

      var reader = new FileReader();

      // Closure to capture the file information.
      reader.onload = (function(theFile) {
        return function(e) {
          // Render thumbnail.
          var span = document.createElement('span');
          span.innerHTML = ['<img class="thumb" src="', e.target.result,
                            '" title="', escape(theFile.name), '"/>'].join('');
          document.getElementById('list').insertBefore(span, null);
        };
      })(f);

      // Read in the image file as a data URL.
      reader.readAsDataURL(f);
    }
  }

  document.getElementById('files').addEventListener('change', handleFileSelect, false);
</script>