用file標(biāo)簽實(shí)現(xiàn)多圖文件上傳預(yù)覽
更新時(shí)間:2017年02月14日 14:34:26 作者:許個(gè)愿吧!
本文介紹了用file標(biāo)簽實(shí)現(xiàn)多圖文件上傳預(yù)覽的方法。具有很好的參考價(jià)值,下面跟著小編一起來(lái)看下吧
js 代碼:
<script> //下面用于多圖片上傳預(yù)覽功能 function setImagePreviews(avalue) { var docObj = document.getElementById("files"); var dd = document.getElementById("preview"); dd.innerHTML = ""; var fileList = docObj.files; for (var i = 0; i < fileList.length; i++) { dd.innerHTML += "<div style='float:left' > <img id='img" + i + "' /> </div>"; var imgObjPreview = document.getElementById("img"+i); if (docObj.files && docObj.files[i]) { //火狐下,直接設(shè)img屬性 imgObjPreview.style.display = 'block'; //控制縮略圖大小 imgObjPreview.style.width = '70px'; imgObjPreview.style.height = '70px'; //imgObjPreview.src = docObj.files[0].getAsDataURL(); //火狐7以上版本不能用上面的getAsDataURL()方式獲取,需要一下方式 imgObjPreview.src = window.URL.createObjectURL(docObj.files[i]); } else { //IE下,使用濾鏡 docObj.select(); var imgSrc = document.selection.createRange().text; alert(imgSrc) var localImagId = document.getElementById("img" + i); //必須設(shè)置初始大小 localImagId.style.width = "70px"; localImagId.style.height = "70px"; //圖片異常的捕捉,防止用戶修改后綴來(lái)偽造圖片 try { localImagId.style.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(sizingMethod=scale)"; localImagId.filters.item("DXImageTransform.Microsoft.AlphaImageLoader").src = imgSrc; } catch (e) { alert("您上傳的圖片格式不正確,請(qǐng)重新選擇!"); return false; } imgObjPreview.style.display = 'none'; document.selection.empty(); } } return true; } </script>
HTML代碼:
<form method="post" enctype="multipart/form-data"> <input type="file" accept="image/png,image/gif,image/jpg,image/jpeg" id="files" name="files" multiple onchange="javascript:setImagePreviews();" /> <input type="button" id="upload" value="上傳" /> <div id="preview"> </div> </form>
以上就是本文的全部?jī)?nèi)容,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作能帶來(lái)一定的幫助,同時(shí)也希望多多支持腳本之家!
相關(guān)文章
uniapp如何使用 web-view 與網(wǎng)頁(yè)互相通信
這篇文章主要介紹了uniapp如何使用 web-view 與網(wǎng)頁(yè)互相通信,在APP中使用 this.$scope.$getAppWebview() 獲取webview對(duì)象實(shí)例,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),感興趣的朋友跟隨小編一起看看吧2024-07-07javascript基于prototype實(shí)現(xiàn)類似OOP繼承的方法
這篇文章主要介紹了javascript基于prototype實(shí)現(xiàn)類似OOP繼承的方法,實(shí)例分析了JavaScript使用prototype實(shí)現(xiàn)面向?qū)ο蟪绦蛟O(shè)計(jì)的中類繼承的相關(guān)技巧,需要的朋友可以參考下2015-12-12js內(nèi)存泄漏場(chǎng)景、如何監(jiān)控及分析詳解
js內(nèi)存泄漏的含義就是當(dāng)已經(jīng)不需要某塊內(nèi)存時(shí)這塊內(nèi)存還存在著,垃圾回收機(jī)制就是間歇的不定期的尋找到不再使用的變量,并釋放掉它們所指向的內(nèi)存,這篇文章主要給大家介紹了關(guān)于js內(nèi)存泄漏場(chǎng)景、如何監(jiān)控及分析的相關(guān)資料,需要的朋友可以參考下2021-11-11PHP實(shí)現(xiàn)的各種中文編碼轉(zhuǎn)換類分享
這篇文章主要介紹了PHP實(shí)現(xiàn)的各種中文編碼轉(zhuǎn)換類分享,本文類庫(kù)支持簡(jiǎn)體中文、繁體中文、GB2312、BIG5、UTF-8等多種格式之間的轉(zhuǎn)換,需要的朋友可以參考下2015-01-01