选择图片后预览(不上传至后台)
来源:互联网 发布:ios蜂窝移动数据应用 编辑:程序博客网 时间:2024/06/05 07:24
这里实现图片预览的最大功臣是FileReader。
FileReader是H5的一个接口 ,和FormData差不多。平常我们是不能直接访问到本地的文件,就算路径是对的也无济于事,但是使用FileReader就可以了。
话不多说,直接上代码:
先在HTML 写个样式,大概这样子就行了
HTML代码大概是这样子
<div class="form-group col-md-12"> <div class="pictureCont" id="pictureCont"> <p>上传图片</p> </div></div><div class="form-group col-md-12 Picsubmit"> <input type="file" name="headImg" id="Picture" placeholder="照片" accept="image/png, image/jpeg, image/gif, image/jpg"></div>
部分CSS
.pictureCont{width: 150px;height:150px;text-align:center;background-color: #fbfbfb;border: 1px solid #d1d1d1;} .pictureCont p{line-height: 150px;} .pictureCont img{width:150px;height:148px!important;} .Picsubmit input{display: inline-block;} #Picture{color:transparent;text-indent:-999999px;border:1px solid #d1d1d1;width:100px;height: 30px;outline:none;background-image: url(images/radio.png);cursor: pointer;}
这里在处理按钮的时候,使用了图片覆盖的方法,把自带的“丑陋”的按钮添加一件花衣裳。
js:
var result = document.getElementById("pictureCont"); var input = document.getElementById("Picture"); function readFile(){ var file = this.files[0]; if(!/image\/\w+/.test(file.type)){ alert("请检查图像格式"); return false; } var reader = new FileReader(); reader.readAsDataURL(file); reader.onload = function(e){ result.innerHTML = '<img src="'+this.result+'" alt=""/>' } }
有些年迈的浏览器不支持H5,这就造业了,不过为了避免报错等问题,最好还是判断一下浏览器支不支持。
if(typeof FileReader === 'undefined'){ result.innerHTML = "抱歉,你的浏览器不支持 FileReader"; input.setAttribute('disabled','disabled'); }else{ input.addEventListener('change',readFile,false); }
阅读全文
0 0
- 选择图片后预览(不上传至后台)
- 图片上传预览,选择图片上传后得到ByteArray
- 上传单个图片,选择图片后即可预览
- 图片上传后预览
- Asp.Net FileUpload选择图片后预览,并直接上传
- .net web实现选择本地图片(上传)后预览图
- 无刷新上传图片 可以实时预览 选择图片后即自动上传,没有上传按钮
- html5 上传 图片 预览 选择
- file 选择图片后预览
- 图片上传预览及上传后台
- 图片上传后即时预览
- html5选择多张图片在页面内预览并上传到后台
- 关于php上传多张图片时,选择图片后就可以预览的问题
- 上传图片前不上传预览?
- EasyUI上传图片,前台预览,后台读取
- HTML5上传图片预览(不需通过服务器)
- 【选择图片Jar】完成选择图片后:预览图片的实现(八)
- js 选择预览图片,并上传
- LOGback设置SQL参数打印
- 学习redis
- Java中next与nextLine的区别与使用
- 2010 浙大机试 最短路径问题
- POJ 1286 Necklace of Beads(Polya染色问题)
- 选择图片后预览(不上传至后台)
- python中两个文件的合并
- 【BFS+状压】HDU_4771_Stealing Harry Potter's Precious
- Java菜鸟学习日记24
- I
- D
- xutils
- WEB开发常见的中文乱码情况及其解决方案
- Android BroadcastReceiver之电话录音