如何解决js drop事件未传递文件数据
我在课堂上有几种方法。
类实例是动态创建的。
实例之一将事件侦听器添加到“放置”事件。该放置事件侦听器功能应该将图像数据传递给类实例中的handleDrop()
,但是我在处理程序函数的cannot read property 'dataTransfer' of undefined
行得到了dt = e.dataTransfer,
。
我正在尝试关注https://soshace.com/the-ultimate-guide-to-drag-and-drop-image-uploading-with-pure-javascript/
数据侦听器代码
canvasWrapper.addEventListener('drop',canvasContext.preventDefault,false);
canvasWrapper.addEventListener('drop',function () {
canvasContext.handleDrop(this.event),false;
});
处理函数
handleDrop(e) {
let dt;
console.log('we have a drop');
dt = e.dataTransfer,console.log('dt',dt);
files = dt.files;
完整代码位于https://github.com/tnewhook/CartoonBuilder/blob/master/cartoonBuilder.js
解决方法
答案很简单:我需要将+---+----+--------+
|id |time|min_time|
+---+----+--------+
|1 |1 |1 |
|1 |1 |1 |
|1 |2 |1 |
|1 |4 |1 |
|1 |5 |1 |
|1 |6 |1 |
|1 |8 |8 |
|1 |12 |8 |
|1 |12 |8 |
|1 |13 |8 |
|1 |14 |14 |
|1 |15 |14 |
|1 |16 |14 |
+---+----+--------+
中的两行合并为handleDrop()
。由于某种原因,它更喜欢单个var而不是两个。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。