预期的效果是 拖拽后 绿色div获取红色div的 data-color
值
代码如果保存成文件 通过 file://
访问 可以实现预期的效果
但部署在服务端后 getData()
返回值为空
关于http协议下 getData()
返回值为空的解释
http://www.whatwg.org/specs/web-apps/current-work/multipage/user-interaction.html#drag-data-store
dragenter
的 drag data store mode
为 Protected mode
即 只能枚举其中项 但不能取出具体值
最后用了一种不科学的方法实现的上述效果
将 format
和 data
合并在 dataTransfer.setData(format, data)
的 format
属性中
获取时再拆出来format
在存储时会做一些处理 因此部分场景可能无法用这种方法
汗,总算给我找到原因了,因为
dragenter
事件不支持用dataTransfer.getData()
读取,只有在drop
的时候可以,你把dragenter
改成drop
是没有问题的。引文给出了解决办法,创建一个全局变量或者存储在一个地方,enter的时候获取,over的时候清除就OK了。cc: http://stackoverflow.com/ques...