【技术】图片预览不求人,原生 JavaScript 来帮你
HTML页面准备
准备一个 div 容器,用于显示图片。使用文件输入框组件,选择本地图片。
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
</head>
<body>
<form action="">
<!-- 文件组件:选择本地文件 -->
<input type="file" onchange="showPhoto(this)"/>
<!-- 存放图片的容器 -->
<div class="img" style="width: 500px; height: auto;"></div>
</form>
</body>
</html>
JavaScript 脚本
给文件输入框组件绑定 onchange 事件,调用 showPhoto方法,并把当前文件组件传递给方法。
方法内获取文件组件内容,通过 FileReader 对象读取文件。读取成功时,将获取到的图片数据设置到 img 标签即可,重点是 src 属性
<script>
function showPhoto(obj) {
// 获取文件
var file = obj.files[0];
// 创建读取文件组件(JS内置对象)
var fr = new FileReader();
// 读取文件
fr.readAsDataURL(file);
// 当数据读取完成的触发一个事件
fr.onload = function () {
// 获取文件数据
var url = fr.result;
console.log(url);
var img = '<img src="'+url+'" style="width:100%;height:100%"/>';
document.querySelector(".img").innerHTML=img;
}
}
</script>