最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

javascript input圖片上傳及預(yù)覽,FileReader預(yù)覽圖片

 更新時(shí)間:2021年06月22日 11:04:42   作者:cdcdhj  
本文放置了html完成代碼案例,有需要大家可以直接復(fù)制測(cè)試功能,采用input文本框圖片上傳,使用FileReader預(yù)覽圖片效果

FileReader是前端進(jìn)行文件處理的一個(gè)重要的Api,特別是在對(duì)圖片的處理上,如果你想知道圖片的處理原理,你就永遠(yuǎn)不可能繞過它。

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
		<style type="text/css">
		.file-ipt{position: absolute;left:0;top: 0;opacity: 0;width: 50px;height: 25px;}  //這里透明化了input框,然后絕對(duì)定位在按鈕上了
		.btn{width: 50px;height: 25px; background-color: skyblue;color: white;margin-right: 80px;border: none;border-radius: 10px;font-size: 8px;}
		</style>
	</head>
	<body>
		<button class="btn">圖片</button>
		<input type="file" id="file" accept="image/jpg,imgae/jpeg,image/png" class="file-ipt" onchange="insertimg(this);"><br>
		<img src="" id="img1" alt="">
		<script language="javascript">
			function insertimg(img){
				var rd=new FileReader();
				files=img.files[0];
				var filetype=files.type.slice(6,10);
				if(filetype!='jpg'&&filetype!='jpeg'&&filetype!='png'){
					alert('僅支持png,jpeg,jpg圖片格式');
					return;
				}else{
					rd.readAsDataURL(files);
					rd.onloadend=function(e){
						document.getElementById('img1').src=e.target.result;
						document.getElementById('img1').style.width="300px";
						document.getElementById('img1').style.height="auto";
					};
				}
			}
		</script>
	</body>
</html>

知識(shí)點(diǎn)補(bǔ)充:JS input file圖片上傳預(yù)覽效果

首先,可以先了解file 和FileReader 的API,在選取一個(gè)或者多個(gè)文件之后,訪問到代表了所選文件的一個(gè)或多個(gè)File對(duì)象,這些對(duì)象被包含在一個(gè)FileList對(duì)象中。所有type屬性(attribute)為file的<input>元素都有一個(gè)files屬性,用來存儲(chǔ)用戶所選擇的文件。files有一個(gè)length屬性和item方法,我們可以通過files[index]或者files.item(index)獲取我們選擇的file對(duì)象??梢酝ㄟ^change事件監(jiān)聽input file輸入完成事件。

html代碼:

 <ul class="crgoods_uploadUl clearfix">
     <li><img src="img/product1.jpg"></li>
     <li><img src="img/product1.jpg"></li>
     <li class="add"><i>+</i>最多20張<input type="file" class="liAdd_flie" οnchange="liUploadImg(this)"></li>
</ul>

js代碼:

//商品相冊(cè)圖片上傳預(yù)覽
    function liUploadImg(file){     
        if (file.files && file.files[0]){
            var reader = new FileReader();
            reader.onload = function(evt){ 
                // imgUpload.src = evt.target.result;
                $('.crgoods_uploadUl li.add').before('<li><img src="'+evt.target.result+'"></li>');   
            }
            reader.readAsDataURL(file.files[0]);
        }else{ 
            var sFilter='filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(sizingMethod=scale,src="';
            file.select();
            var src = document.selection.createRange().text;
            imgUpload.filters.item('DXImageTransform.Microsoft.AlphaImageLoader').src = src;
        }
    }

另外,詳細(xì)API可以參考https://segmentfault.com/a/1190000006600936

示例如下:

到此這篇關(guān)于javascript input圖片上傳及預(yù)覽,FileReader預(yù)覽圖片的文章就介紹到這了,更多相關(guān)javascript文件上傳及預(yù)覽內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評(píng)論

普宁市| 固镇县| 呼玛县| 桦甸市| 新巴尔虎右旗| 宽甸| 乌恰县| 武穴市| 阿克陶县| 苏尼特左旗| 山东| 内乡县| 黄陵县| 高唐县| 定襄县| 鄄城县| 高密市| 抚顺县| 三河市| 公安县| 水富县| 二手房| 通榆县| 伊吾县| 温宿县| 通江县| 平舆县| 淮北市| 克什克腾旗| 乌兰浩特市| 台山市| 临邑县| 伽师县| 许昌县| 共和县| 安塞县| 东阿县| 尼玛县| 柘荣县| 云龙县| 镇江市|