<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<style>
.contain{
width: 300px;
height: 300px;
border: 1px solid black;
text-align: center;
line-height: 300px;
}
.fileList{
display: flex;
}
.file{
width: 100px;
height: 100px;
border: 1px solid blue;
margin: 20px;
}
</style>
</head>
<body>
<div class="contain">
将图片放在此处
</div>
<div class="fileList">
</div>
</body>
<script>
const contain = document.querySelector('.contain')
const fileList = document.querySelector('.fileList')
contain.addEventListener('dragover',(e)=>{
e.preventDefault()//阻止默认事件
})
contain.addEventListener('drop',(e)=>{
e.preventDefault()// 阻止浏览器默认事件
transformBase64(e.dataTransfer.files)
})
function transformBase64(files){
Array.from(files).forEach(file=>{
const fileReader = new FileReader()
fileReader.readAsDataURL(file);//异步读取
fileReader.onload= (res)=>{
let base64 = res.target.result
const imgDom = new Image();
imgDom.src = base64
imgDom.className = 'file'
fileList.appendChild(imgDom)
// fileList.innerHTML+=`<img src='${base64}' class="file">`
}
})
}
</script>
</html>
h5 はファイルのドラッグ アンド ドロップ アップロードをシミュレートします
おすすめ
転載: blog.csdn.net/weixin_45485922/article/details/124899945
おすすめ
ランキング