2014-01-20 80 views

回答

0

文件列表正在被fileuploader.js插件創建。當文件上傳開始時,插件創建列表項HTML元素,然後將其添加到頁面。下面的代碼,它是如何工作的:

列表項目模板是在qq.FileUploader類:

fileTemplate: '<li>' + 
    '<span class="qq-upload-file"></span>' + 
    '<span class="qq-upload-spinner"></span>' + 
    '<span class="qq-upload-size"></span>' + 
    '<a class="qq-upload-cancel" href="#">Cancel</a>' + 
    '<span class="qq-upload-failed-text">Failed</span>' + 
    '</li>', 

_addToList()函數使用上面的模板新列表項的HTML元素:

addToList: function(id, fileName){ 
    var item = qq.toElement(this._options.fileTemplate);     
    item.qqFileId = id; 

    var fileElement = this._find(item, 'file');   
    qq.setText(fileElement, this._formatFileName(fileName)); 
    this._find(item, 'size').style.display = 'none';   

    this._listElement.appendChild(item); 
}, 

當一個文件上傳開始時,_addToList()函數(上面)被稱爲在_onSubmit()方法:

_onSubmit: function(id, fileName){ 
    qq.FileUploaderBasic.prototype._onSubmit.apply(this, arguments); 
    this._addToList(id, fileName); 
},