html5 js 图片上传预览
2016-10-24 16:20
281 查看
首先获取显示图片的位置和input的对象,判断浏览器是否兼容 var img = document.getElementById("img");
var file = document.getElementById("file");
if(!(window.FileReader && window.File && window.FileList && window.Blob)) {
img.alt = '您的浏览器不支持fileReader';
}
然后给input绑定变动事件
下面是一个案例,我简单封装了一下
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
<input type="file" id="myfile">
<img src="" id="mypic" alt="">
<script type="text/javascript">
function change_pic(img_id, file_id) {
var img = document.getElementById(img_id);
var file = document.getElementById(file_id);
if (!(window.FileReader && window.File && window.FileList && window.Blob)) {
img.alt = '您的浏览器不支持fileReader';
}
file.addEventListener('change', function(e) {
var files = this.files;
if (files.length) {
// 对文件进行处理,下面会讲解checkFile()会做什么
checkFile(this.files);
}
});
// 图片处理
function checkFile(files) {
var file = files[0];
var reader = new FileReader();
// show表示<div id='show'></div>,用来展示图片预览的
if (!/image\/\w+/.test(file.type)) {
show.innerHTML = "请确保文件为图像类型";
return false;
}
// onload是异步操作
reader.onload = function(e) {
//show.innerHTML = '<img src="'+e.target.result+'" alt="img">';
img.src = e.target.result;
}
reader.readAsDataURL(file);
}
}
change_pic("mypic", "myfile");
//调用方法,change_pic(图片id,文件选择iput框id);
</script>
</body>
</html>
var file = document.getElementById("file");
if(!(window.FileReader && window.File && window.FileList && window.Blob)) {
img.alt = '您的浏览器不支持fileReader';
}
然后给input绑定变动事件
file.addEventListener('change', function(e){ var files = this.files; if(files.length){ // 对文件进行处理,下面会讲解checkFile()会做什么 checkFile(this.files); } });设置处理
// 图片处理 function checkFile(files){ var file = files[0]; var reader = new FileReader(); // show表示<div id='show'></div>,用来展示图片预览的 if(!/image\/\w+/.test(file.type)){ show.innerHTML = "请确保文件为图像类型"; return false; } // onload是异步操作 reader.onload = function(e){ //show.innerHTML = '<img src="'+e.target.result+'" alt="img">'; img.src = e.target.result; } reader.readAsDataURL(file); }
下面是一个案例,我简单封装了一下
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
<input type="file" id="myfile">
<img src="" id="mypic" alt="">
<script type="text/javascript">
function change_pic(img_id, file_id) {
var img = document.getElementById(img_id);
var file = document.getElementById(file_id);
if (!(window.FileReader && window.File && window.FileList && window.Blob)) {
img.alt = '您的浏览器不支持fileReader';
}
file.addEventListener('change', function(e) {
var files = this.files;
if (files.length) {
// 对文件进行处理,下面会讲解checkFile()会做什么
checkFile(this.files);
}
});
// 图片处理
function checkFile(files) {
var file = files[0];
var reader = new FileReader();
// show表示<div id='show'></div>,用来展示图片预览的
if (!/image\/\w+/.test(file.type)) {
show.innerHTML = "请确保文件为图像类型";
return false;
}
// onload是异步操作
reader.onload = function(e) {
//show.innerHTML = '<img src="'+e.target.result+'" alt="img">';
img.src = e.target.result;
}
reader.readAsDataURL(file);
}
}
change_pic("mypic", "myfile");
//调用方法,change_pic(图片id,文件选择iput框id);
</script>
</body>
</html>
相关文章推荐
- 用html5 canvas js 实现图片大小的压缩显示,图片上传后可在线预览。
- JS HTML5拖拽上传图片预览
- js HTML5多图片上传及预览实例解析(不含前端的文件分割)
- 用js实现上传图片前的预览(TX的面试题)
- js :实现图片上传前,预览客户端图片(兼容IE6和IE7)
- js 图片上传预览
- asp.net+js实现上传图片即时预览
- 用js实现上传图片前的预览(TX的面试题)
- js实现上传时图片的预览
- JS预览上传图片
- js上传图片前预览
- JS 上传图片 提前预览功能 .NET
- neatbeans用js实现图片预览上传(自动控制图片大小)
- 图片上传之前检查大小、尺寸、格式并预览的js代码
- js预览待上传的本地图片
- 用js实现预览待上传的本地图片
- 用js实现上传图片前的预览
- JS上传文件前预览本地图片
- js实现IE7图片上传预览的功能代码
- js图片上传预览(这是还没有上传到服务器的时候进行的图片预览代码)