亚洲精品久久久久久第一页-人妻少妇精彩视品一区二区三区-91国产自拍免费视频-免费一级a在线播放视频正片-少妇天天日天天射天天爽-国产大屁股喷水视频在线观看-操美女骚穴抽插性爱视频-亚洲 欧美 中文字幕 丝袜-成人免费无码片在线观看

html5零基礎(chǔ)入門教程 html上傳文件到服務(wù)器( 三 )


// 文件上傳change事件的偵聽器fileUploader.addEventListener('change', (event) => {// 讀取文件大小const file = event.target.files[0];const size = file.size;let msg = ''; // 檢查文件大小是否大于1MB,并準(zhǔn)備一條消息 。if (size > 1024 * 1024) {msg = `<span style="color:red;">The allowed file size is 1MB. The file you are trying to upload is of ${returnFileSize(size)}</span>`;} else {msg = `<span style="color:green;"> A ${returnFileSize(size)} file has been uploaded successfully. </span>`;}// 向用戶顯示消息feedback.innerHTML = msg;});嘗試上傳不同大小的文件,以查看驗證的工作原理
CodePen:https://codepen.io/atapas/pen/pobjMKv
<div><h1>檢查文件大小</h1><input type="file" id="file-uploader"><div id="feedback"></div</div>const fileUploader = document.getElementById('file-uploader');const feedback = document.getElementById('feedback');fileUploader.addEventListener('change', (event) => {const file = event.target.files[0];console.log('file', file);const size = file.size;console.log('size', size);let msg = '';if (size > 1024 * 1024) {msg = `<span style="color:red;">The allowed file size is 1MB. The file you are trying to upload is of ${returnFileSize(size)}</span>`;} else {msg = `<span style="color:green;"> A ${returnFileSize(size)} file has been uploaded successfully. </span>`;}feedback.innerHTML = msg;});function returnFileSize(number) {if(number < 1024) {return number + 'bytes';} else if(number >= 1024 && number < 1048576) {return (number/1024).toFixed(2) + 'KB';} else if(number >= 1048576) {return (number/1048576).toFixed(2) + 'MB';}}7.顯示文件上傳進度更好的可用性是讓你的用戶知道文件上傳的進程 ?,F(xiàn)在,我們知道了 FileReader 和讀取和加載文件的事件 。
const reader = new FileReader();FileReader 有另一個事件,稱為進度(progress),知道已加載了多少 。我們可以使用HTML5的 progress 標(biāo)簽來創(chuàng)建帶有此信息的進度欄 。
reader.addEventListener('progress', (event) => {if (event.loaded && event.total) {// 計算完成百分比const percent = (event.loaded / event.total) * 100;// 將值設(shè)置為進度組件progress.value = https://www.520longzhigu.com/diannao/percent;}});不如你試著上傳一個大一點的文件,看看下面的CodePen中的進度條工作情況如何?試試吧 。
CodePen:https://codepen.io/atapas/pen/eYzpwYj
<div><h1>File upload progress</h1><input type="file" id="file-uploader"><div id="feedback"></div><label id="progress-label" for="progress"></label><progress id="progress" value="https://www.520longzhigu.com/diannao/0" max="100"> </progress></div>const fileUploader = document.getElementById('file-uploader');const feedback = document.getElementById('feedback');const progress = document.getElementById('progress');const reader = new FileReader();fileUploader.addEventListener('change', (event) => {const files = event.target.files;const file = files[0];reader.readAsDataURL(file);reader.addEventListener('progress', (event) => {if (event.loaded && event.total) {const percent = (event.loaded / event.total) * 100;progress.value = https://www.520longzhigu.com/diannao/percent;document.getElementById('progress-label').innerHTML = Math.round(percent) + '%';if (percent === 100) {let msg = `<span style="color:green;">File <u><b>${file.name}</b></u> has been uploaded successfully.</span>`;feedback.innerHTML = msg;}}});});8.目錄上傳呢?我們可以上傳整個目錄嗎?好吧,這是可能的,但有一些限制 。有一個叫做 webkitdirectory 的非標(biāo)準(zhǔn)屬性(至少在寫這篇文章的時候是這樣),允許我們上傳整個目錄 。
雖然最初只針對基于WebKit的瀏覽器實現(xiàn),但webkitdirectory也可以在Microsoft Edge以及Firefox 50和更高版本中使用 。但是,即使它具有相對廣泛的支持,它仍然不是標(biāo)準(zhǔn)的,除非您別無選擇,否則不應(yīng)該使用它 。


以上關(guān)于本文的內(nèi)容,僅作參考!溫馨提示:如遇健康、疾病相關(guān)的問題,請您及時就醫(yī)或請專業(yè)人士給予相關(guān)指導(dǎo)!

「愛刨根生活網(wǎng)」www.malaban59.cn小編還為您精選了以下內(nèi)容,希望對您有所幫助: