sample.html
<!DOCTYPE html>
<html>
<head>
<style>
#drop_zone {
background-color:peachpuff;
border-style: dashed;
border-width: 1px;
line-height: 50px;
height: 100px;
}
</style>
</head>
<body>
<div id="drop_zone" ondrop="dropHandler(event);" ondragover="dragOverHandler(event);">
<p>1つ以上のバイナリファイルをこの領域にドロップしてください</p>
</div>
</body>
</html>
sample.js
function dropHandler(ev) {
ev.preventDefault();
if (ev.dataTransfer.items) {
[...ev.dataTransfer.items].forEach((item, i) => {
if (item.kind === "file") {
const file = item.getAsFile();
}
});
}
}
function dragOverHandler(ev) {
ev.preventDefault();
}