我正在尝试在拖放事件中设置一个自定义数据,这个数据是一个HTML元素。目前我已经做了以下工作:
element.addEventListener('dragstart', event => {
event.dataTransfer.setData('custom-data', document.querySelector('.the-element')
})
dropzone.addEventListener('drop', event => {
const data = event.dataTransfer.getData('custom-data') // this is empty
})
有没有一种方法可以实现这个?
我已经尝试在将元素传递给拖动事件之前对其进行JSON.stringify
,但是JSON.stringify
不适用于HTMLElement对象。
这个参考文献来自mdn,它说可以使用自定义数据。
'application/json'
,但结果得到了[object HTMLElement]
。 - bobharley