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

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


您可以將此屬性指定為
<input type="file" id="file-uploader" webkitdirectory />這將允許您選擇一個文件夾(又名目錄)
用戶必須提供確認(rèn)信息才能上傳目錄,
用戶單擊“Upload”按鈕后,就會進(jìn)行上傳 。這里要注意的重要一點(diǎn):FileList 數(shù)組將以平面結(jié)構(gòu)的形式包含有關(guān)上載目錄中所有文件的信息 。但關(guān)鍵是,對于每個 File 對象,webkitRelativePath 屬性都會有目錄路徑 。
例如,讓我們考慮一個 main 目錄及其下的其他文件夾和文件,
現(xiàn)在,F(xiàn)ile 對象將將 webkitRelativePath 填充為
您可以使用它在您選擇的任何UI結(jié)構(gòu)中呈現(xiàn)文件夾和文件 。使用此CodePen進(jìn)行進(jìn)一步探索 。
CodePen:https://codepen.io/atapas/pen/dyXYRKp
<div><h1>Upload directories</h1><input type="file" id="file-uploader" webkitdirectory /><ul id="pathList"></ul></div>const fileUploader = document.getElementById('file-uploader');const pathList = document.getElementById('pathList');function removeAllChildNodes(parent) {while (parent.firstChild) {parent.removeChild(parent.firstChild);}}fileUploader.addEventListener('change', (event) => {const files = event.target.files;console.log('files', files);removeAllChildNodes(pathList);[...files].forEach((file, index) => {let path = document.createElement('li');path.innerHTML = file.webkitRelativePath;pathList.appendChild(path);});});9.讓我們拖放,上傳不支持拖放功能進(jìn)行文件上傳是一種古老的方式,不是嗎?讓我們看看如何通過幾個簡單的步驟來實現(xiàn)這一目標(biāo) 。
首先,創(chuàng)建一個放置區(qū)和一個可選的區(qū)域以顯示上傳的文件內(nèi)容 。我們將使用圖像作為文件拖放到此處 。
<div id="container"><h1>Drag & Drop an Image</h1><div id="drop-zone">DROP HERE</div><div id="content">Your image to appear here..</div></div>通過它們各自的ID獲取拖拽和內(nèi)容區(qū)域 。
const dropZone = document.getElementById('drop-zone');const content = document.getElementById('content');添加一個 dragover 事件處理程序,以顯示將要復(fù)制的內(nèi)容的效果,
dropZone.addEventListener('dragover', event => {event.stopPropagation();event.preventDefault();event.dataTransfer.dropEffect = 'copy';});接下來,定義放置圖像時我們要做什么,我們將需要一個 drop 事件監(jiān)聽器來處理 。
dropZone.addEventListener('drop', event => {// 獲取文件const files = event.dataTransfer.files;// 現(xiàn)在,我們可以盡一切可能來展示文件內(nèi)容在一個HTML元素中,如,DIV 。});嘗試在下面的CodePen示例中拖放圖像文件,并查看其工作原理,不要忘記查看代碼以渲染拖放的圖像 。
CodePen:https://codepen.io/atapas/pen/ExyVoXN
<div id="container"><h1>Drag & Drop an Image</h1><div id="drop-zone"> DROP HERE </div><div id="content">Your image to appear here.. </div></div>const dropZone = document.getElementById('drop-zone');const content = document.getElementById('content');const reader = new FileReader();if (window.FileList && window.File) {dropZone.addEventListener('dragover', event => {event.stopPropagation();event.preventDefault();event.dataTransfer.dropEffect = 'copy';});dropZone.addEventListener('drop', event => {content.innerHTML = '';event.stopPropagation();event.preventDefault();const files = event.dataTransfer.files;console.log(files);reader.readAsDataURL(files[0]);reader.addEventListener('load', (event) => {content.innerHTML = '';const img = document.createElement('img');img.style.height = '400px';img.style.width = '400px';content.appendChild(img);img.src = https://www.520longzhigu.com/diannao/event.target.result;img.alt = file.name;});}); }10.使用objectURLs處理文件有一個稱為 URL.createObjectURL() 的特殊方法,可以從文件創(chuàng)建唯一的URL,您也可以使用 URL.revokeObjectURL() 方法釋放它 。


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

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