从文件对话框中选择文件并单击“确定”后,如何改善此代码以消除不响应/页面滞后?
我一直在测试大小约为50-100 KB的文件
function handleFileSelect(evt) {
var files = evt.target.files; // FileList object
// files is a FileList of File objects. List some properties.
var output = [];
for (var i = 0, f; f = files[i]; i++) {
output.push('<li><strong>', escape(f.name), '</strong> (', f.type || 'n/a', ') - ',
f.size, ' bytes, last modified: ',
f.lastModifiedDate ? f.lastModifiedDate.toLocaleDateString() : 'n/a',
'</li>');
}
document.getElementById('list').innerHTML = '<ul>' + output.join('') + '</ul>';
}
document.getElementById('files').addEventListener('change', handleFileSelect, false);
<input type="file" id="files" name="files[]" multiple />
<output id="list"></output>
我在本地主机上运行此页面,并且正在使用SSD
谢谢
提交表单后,必须将文件传输到服务器,浏览器等待响应(可能包含错误等)。
—
尖尖的
@Kaiido只需一个文件。操作系统:Windows ..
—
Joelty
When happens the lag, before the dialog appears?在单击Open文件对话框后,因此消失了
您也尝试过使用其他计算机吗?这可能
—
取决于
我复制了您的代码,将其放入HTML文件中,然后从桌面运行它。由于这是纯JavaScript,因此不需要“服务器”。无论选择哪个文件,我都找不到延迟。
—
KIKO Software

<input>标记不使用,不需要斜杠,HTML中也没有。