本文介绍如何利用 JavaScript 和 HTML5 的拖拽 API 实现图片上传功能。通过监听 dragover 和 drop 事件,结合 FileReader 读取本地文件并生成预览图片,无需后端即可在前端完成图片的拖拽与展示。
JavaScript 实现图片拖拽上传功能
只需将本地图片直接拖放到预设的上传区域,即可完成操作,具体实现代码如下所示。
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>标题</title>
<meta name="keywords" content="">
<meta name="description" content="">
<style>
*{margin:0; padding:0; list-style:none;}
#box{
width: 600px;
height: 300px;
background: #ccc;
padding: 50px;
}
</style>
</head>
<body>
<div id="box"></div>
<script>
var box=document.getElementById('box');
box.ondragover=function (e){
e.preventDefault();
}
box.ondrop=function (e){
e.preventDefault();
// console.log(e.dataTransfer.files[0]);
var f=e.dataTransfer.files[0];//获取到第一个上传的文件对象
var fr=new FileReader();//实例FileReader对象
fr.readAsDataURL(f);//把上传的文件对象转换成url
fr.onload=function (e){
console.log(e);
// var Url=e.target.result;//上传文件的URL
var Url=this.result;//上传文件的URL
box.innerHTML+='<img src="'+Url+'" alt="">';
}
}
</script>
</body>
</html>
以上内容为本文的全部介绍,希望能为读者的学习提供辅助,同时也欢迎大家继续支持本站。