摘要:瀏覽器圖片預(yù)覽圖片拖動(dòng)添加,實(shí)時(shí)預(yù)覽以下代碼就可以實(shí)現(xiàn)。接口提供了標(biāo)準(zhǔn)方法,瀏覽器有快捷方法。文件預(yù)覽不知道是不是標(biāo)準(zhǔn),但是現(xiàn)代瀏覽器基本上都支持,而且需要瀏覽器支持,跟提供的快捷方法返回的是一個(gè)的二進(jìn)制流,也是可以用的,但不清楚原理。
瀏覽器圖片預(yù)覽 https://www.zybuluo.com/bornkiller/note/5
圖片拖動(dòng)添加,實(shí)時(shí)預(yù)覽以下代碼就可以實(shí)現(xiàn)。FileReader接口提供了標(biāo)準(zhǔn)方法,chrome瀏覽器有快捷方法。
Title Page
這里代碼基本完成要求,說(shuō)明如下:
拖動(dòng)添加,需要阻止默認(rèn)行為,否則瀏覽器會(huì)嘗試打開文件。如果是拖動(dòng)事件,通過(guò)e.dataTransfer.files獲取文件列表,如果通過(guò)需要監(jiān)聽(tīng)change事件,通過(guò)e.target.files獲取文件列表。
文件預(yù)覽 FileReader不知道是不是HTML5標(biāo)準(zhǔn),但是現(xiàn)代瀏覽器基本上都支持,而且需要瀏覽器支持data-url schema,firefox跟chrome提供的快捷方法window.URL.createObjectURL(),window.webkitURL.createObjectURL()返回的是一個(gè)blob:***的二進(jìn)制流,也是可以用的,但不清楚原理。
文件上傳進(jìn)度監(jiān)控,XHR2提供progress事件用于檢測(cè)上傳狀態(tài),兩個(gè)屬性e.total,e.loaded總大小和已上傳大小。
function shortcut(e){ var images = e.dataTransfer.files; var img = document.createElement("img"); img.src = window.webkitURL.createObjectURL(images[0]); document.querySelector("#loves").appendChild(img); }
后臺(tái)使用nodejs Express框架編寫
/** * Created by Administrator on 14-2-5. */ var express =require("express"); var app = express(); app.post("/upload", express.bodyParser({ keepExtensions: true, uploadDir: __dirname + "/static/upload" }), uploadSolve); app.use(app.router); app.use(express.static(__dirname + "/static")); app.listen(1337); function uploadSolve(req,res,next){ res.status(200); }
沒(méi)有任何安全防護(hù)的操作,僅基礎(chǔ)的文件保存功能。
疑問(wèn)請(qǐng)聯(lián)系QQ:491229492文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/87482.html
摘要:引入當(dāng)使用上傳圖片文件時(shí),如何在上傳到服務(wù)器之前,在本地進(jìn)行預(yù)覽對(duì)象對(duì)象允許應(yīng)用程序異步讀取用戶計(jì)算機(jī)上的文件。 引入 當(dāng)使用上傳圖片文件時(shí),如何在上傳到服務(wù)器之前,在本地進(jìn)行預(yù)覽? FileReader 對(duì)象 FileReader對(duì)象允許Web應(yīng)用程序異步讀取用戶計(jì)算機(jī)上的文件。使用new創(chuàng)建一個(gè)FileReader實(shí)例對(duì)象: let fileReader = new FileRea...
摘要:引入當(dāng)使用上傳圖片文件時(shí),如何在上傳到服務(wù)器之前,在本地進(jìn)行預(yù)覽對(duì)象對(duì)象允許應(yīng)用程序異步讀取用戶計(jì)算機(jī)上的文件。 引入 當(dāng)使用上傳圖片文件時(shí),如何在上傳到服務(wù)器之前,在本地進(jìn)行預(yù)覽? FileReader 對(duì)象 FileReader對(duì)象允許Web應(yīng)用程序異步讀取用戶計(jì)算機(jī)上的文件。使用new創(chuàng)建一個(gè)FileReader實(shí)例對(duì)象: let fileReader = new FileRea...
摘要:以上傳圖片為例。我們可以通過(guò)獲取上傳的圖片相關(guān)信息,但是想要實(shí)現(xiàn)本地預(yù)覽還需要借助來(lái)實(shí)現(xiàn)可以讀取本地圖片,并將圖片數(shù)據(jù)轉(zhuǎn)換成編碼的字符串形式嵌入到頁(yè)面中。在我們實(shí)現(xiàn)上傳圖片的效果里,就有用到。圖片預(yù)覽兼容處理及以下版本不支持和。 最近項(xiàng)目里需要用到上傳圖片并預(yù)覽的功能,于是寫了個(gè)jQuery預(yù)覽圖片插件,下載地址。如果有需要的,可以直接下載。第一次寫jQuery插件,如有不對(duì)之處,歡迎...
摘要:移動(dòng)端預(yù)覽壓縮上傳圖片推薦一個(gè)使用成熟的解決方案文章已同步我的筆記,歡迎大家加,加后人生更加美好原理介紹移動(dòng)端圖片上傳,通過(guò)生成圖片資源進(jìn)行預(yù)覽,通過(guò)進(jìn)行圖片的壓縮,將圖片轉(zhuǎn)換成對(duì)象上傳。 移動(dòng)端預(yù)覽壓縮上傳圖片 推薦一個(gè)使用成熟的解決方案:https://github.com/think2011/... 文章已同步我的github筆記https://github.com/ymblog...
摘要:圖片預(yù)覽方法圖片預(yù)覽現(xiàn)在大多數(shù)基于提供的接口,而給我們提供了四個(gè)方法屬性中二進(jìn)制數(shù)據(jù)緩沖區(qū)屬性中包含文件原始二進(jìn)制數(shù)據(jù)屬性中將包含一個(gè)格式的字符串以表示所讀取文件的內(nèi)容屬性中將包含一個(gè)字符串以表示所讀取的文件內(nèi)容一其中要實(shí)現(xiàn)圖片預(yù)覽需要用這 圖片預(yù)覽方法 圖片預(yù)覽現(xiàn)在大多數(shù)基于HTML5提供的接口FileReader,而FileReader給我們提供了四個(gè)方法1.readAsArray...
閱讀 3848·2021-11-24 09:39
閱讀 3768·2021-11-22 12:07
閱讀 1121·2021-11-04 16:10
閱讀 816·2021-09-07 09:59
閱讀 1911·2019-08-30 15:55
閱讀 950·2019-08-30 15:54
閱讀 737·2019-08-29 14:06
閱讀 2487·2019-08-27 10:54