我正在尝试设置一个自定义数据,它是我的拖动事件上的 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 对象此 reference从 mdn 说可以使用自定义数据
最佳答案
根据这个MDN reference , 可以指定数据类型 text/html
并传递一个格式良好的 HTML 字符串。如果你想使用 DOM 中现有的元素,你可以传递它的 outerHTML字符串属性。
关于javascript - 如何在html拖放上设置自定义数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49870430/