我在网站上添加了拖放支持。我有一个div,您可以在其中删除文件并将其上传但如果您不将文件放在该特定div中,则将该文件加载到浏览器中(默认行为) 那么,问题是: 有没有办法将文件放在页面的任何部分,并将相同的事件发送/触发到执行文件上传的特定div?
我有一个react组件,当你把任何内容放入div时处理文件上传,所以,我正在考虑像这样的代码来避免拖放到页面中,但是不要避免,只需将事件发送到另一个元素,让我们说<div id="dropzone"></div>
window.addEventListener("dragover",function(e){
e = e || event;
e.preventDefault();
},false);
window.addEventListener("drop",function(e){
e = e || event;
e.preventDefault();
},false);
答案 0 :(得分:0)
您可以将drop
事件附加到<body>
元素,调用处理文件event.dataTransfer.files
,可能event
作为参数的函数。