原生js FileReader對(duì)象實(shí)現(xiàn)圖片上傳本地預(yù)覽效果
本文實(shí)例為大家分享了js實(shí)現(xiàn)圖片上傳本地預(yù)覽效果的具體代碼,供大家參考,具體內(nèi)容如下

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
<style>
label{display: inline-block;width:200px;height:40px;border:1px solid #ccc;}
.ob{background:#ccc;padding:10px;}
.imgbox img{height:100px;width:100px;margin:10px;}
</style>
</head>
<body>
<div class="ob" id="od" draggable="true">
<input type="file" id="file" multiple="multiple">
</div>
<div class="imgbox"></div>
<script>
//獲取文件url
function createObjectURL(blob){
if (window.URL){
return window.URL.createObjectURL(blob);
} else if (window.webkitURL){
return window.webkitURL.createObjectURL(blob);
} else {
return null;
}
}
var box = document.querySelector(".imgbox"); //顯示圖片box
var file = document.querySelector("#file"); //file對(duì)象
var domFragment = document.createDocumentFragment(); //文檔流優(yōu)化多次改動(dòng)dom
//觸發(fā)選中文件事件
file.onchange = function(e){
box.innerHTML =""; //清空上一次顯示圖片效果
e = e || event;
var file = this.files; //獲取選中的文件對(duì)象
for(var i = 0, len = file.length; i < len; i++){
var imgTag = document.createElement("img");
var fileName = file[i].name; //獲取當(dāng)前文件的文件名
var url = createObjectURL(file[i]); //獲取當(dāng)前文件對(duì)象的URL
//忽略大小寫
var jpg = (fileName.indexOf(".jpg") > -1) || (fileName.toLowerCase().indexOf(".jpg") > -1);
var png = (fileName.indexOf(".png") > -1) || (fileName.toLowerCase().indexOf(".png") > -1);
var jpeg = (fileName.indexOf(".jpeg") > -1) || (fileName.toLowerCase().indexOf(".jpeg") > -1);
//判斷文件是否是圖片類型
if(jpg || png || jpeg){
imgTag.src = url;
domFragment.appendChild(imgTag);
}else{
alert("請(qǐng)選擇圖片類型文件!");
}
}
//最佳顯示
box.appendChild(domFragment);
}
</script>
</body>
</html>
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- javascript結(jié)合fileReader 實(shí)現(xiàn)上傳圖片
- JavaScript通過filereader接口讀取文件
- JS中利用FileReader實(shí)現(xiàn)上傳圖片前本地預(yù)覽功能
- JS+HTML5 FileReader對(duì)象用法示例
- JS+HTML5 FileReader實(shí)現(xiàn)文件上傳前本地預(yù)覽功能
- JavaScript html5利用FileReader實(shí)現(xiàn)上傳功能
- JavaScript使用FileReader實(shí)現(xiàn)圖片上傳預(yù)覽效果
- 基于JavaScript FileReader上傳圖片顯示本地鏈接
- JS中FileReader類實(shí)現(xiàn)文件上傳及時(shí)預(yù)覽功能
- JavaScript中的FileReader示例詳解
相關(guān)文章
JS實(shí)現(xiàn)多級(jí)菜單中當(dāng)前菜單不隨頁(yè)面跳轉(zhuǎn)樣式而發(fā)生變化
本文介紹了JQuery巧妙實(shí)現(xiàn)多級(jí)菜單中當(dāng)前菜單不隨頁(yè)面跳轉(zhuǎn)樣式發(fā)生變化,實(shí)現(xiàn)方法非常簡(jiǎn)單,感興趣的朋友一起看看吧2017-05-05
微信小程序swiper實(shí)現(xiàn)文字縱向輪播提示效果
這篇文章主要介紹了微信小程序swiper實(shí)現(xiàn)文字縱向輪播提示效果,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-01-01
js 按照指定間隔 向字符串中插入隨機(jī)字符串的實(shí)現(xiàn)代碼
看到論壇有人問,覺得有意思,就試著寫了一下。2010-03-03
JavaScript實(shí)現(xiàn)語(yǔ)音排隊(duì)叫號(hào)系統(tǒng)
語(yǔ)音排隊(duì)叫號(hào)系統(tǒng)廣泛用于銀行,餐飲,醫(yī)院等場(chǎng)景。本文主要介紹了通過JavaScript實(shí)現(xiàn)的語(yǔ)音排隊(duì)叫號(hào)系統(tǒng),有掃碼排隊(duì),語(yǔ)音叫號(hào)等功能。需要的可以參考一下2021-12-12
JavaScript使用cookie實(shí)現(xiàn)記住賬號(hào)密碼功能
這篇文章主要介紹了JavaScript使用cookie實(shí)現(xiàn)記住賬號(hào)密碼功能,本文直接給出完整測(cè)試代碼,需要的朋友可以參考下2015-04-04
10個(gè)很少使用的JavaScript?Console方法分享
你一定聽說(shuō)過?console.log()?,而且可能一直在使用它,在本文中,我們將探討一些最有用的控制臺(tái)方法,以及它們?cè)跀?shù)據(jù)可視化、調(diào)試等方面的用途,感興趣的小伙伴可以學(xué)習(xí)一下2023-09-09

