Bagaimana saya dapat meningkatkan kode ini untuk menghapus ketidaktanggapan / kelambatan halaman setelah memilih file dari dialog file dan mengklik OK?
Saya sudah menguji file dengan ukuran sekitar 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>
Saya menjalankan halaman ini di localhost dan saya menggunakan SSD
Terima kasih
javascript
html
Joelty
sumber
sumber
<input>
tag tidak menggunakan dan tidak membutuhkan garis miring penutup dan tidak pernah memiliki HTML.When happens the lag, before the dialog appears?
setelah mengklikOpen
dalam dialog file, jadi setelah itu menghilangJawaban:
Kode Anda baik-baik saja. Coba ukur kinerja untuk menyelidiki lebih lanjut:
sumber
Gunakan Janji di fungsi handleFileSelect Anda atau buat fungsi asinkron darinya.
sumber
Kode Anda berfungsi dan tidak ada yang salah dengannya. Anda hanya dapat meningkatkan kinerja dengan terlebih dahulu mengukurnya dan kemudian mengambil tindakan yang sesuai.
Misalnya, Anda dapat mengubah kode menjadi pendekatan yang lebih bersih -
sumber