我在 Chrome 24.0.1312.5 中遇到了一个非常奇怪的 dataTransfer 问题,我希望我能得到一些想法。基本上,我有一个nodeIterator
从 iframe 中挑选出一些有用的元素。对于这些元素中的每一个,我都添加了事件侦听器以允许删除内容。我对这段代码有疑问:
currentNode.addEventListener('dragover', function (e) {
// Only accept images
// Error occurs in below conditional
if (e.dataTransfer.types.contains('text/uri-list')) {
e.preventDefault();
}
});
这是我添加数据的代码部分:
figure.draggable = 'true';
figure.addEventListener('dragstart', function (e) {
e.dataTransfer.setData('text/uri-list', img.src);
e.dataTransfer.setData('text/plain', img.alt);
e.dataTransfer.setData('application/x-trash.delete', img.id);
});
我在控制台中得到的错误是这样的:
Uncaught TypeError: Object text/plain,text/uri-list,application/x-trash.delete
has no method 'contains'
我写了一个应该能够重现这个问题的小提琴,但它当然工作得很好。
对我可能遗漏的东西有什么想法吗?或者我应该检查的其他相关代码部分?