Разве Chrome неправильно реализовал объект dataTransfer?

Когда я делаю это в dragstart событии:

e.dataTransfer.setData('text/plain', 'text');
e.dataTransfer.setData('text/html', 'html');
e.dataTransfer.setData('application/x-bookmark', 'bookmark');

и это в событии отбрасывания:

for (var i = 0; i < e.dataTransfer.types.length; i++) {
   var type = e.dataTransfer.types[i];
   console.log(type + ":" + e.dataTransfer.getData(type));
}

Я, как предполагалось, имел:

text/plain:text
text/html:html
application/x-bookmark:bookmark

как, что я вошел в FF, но на самом деле я добрался:

Text:text
text/plain:text

в Chrome. Куда те данные уводят? Это означает, что хром не реализовал объект dataTransfer правильно? И что я могу сделать об этом?

Я выполнил это в Chrome 4.0.266.0

14
задан skaffman 13 December 2009 в 09:49
поделиться

1 ответ

Да, это жучок в Хроме. Смотрите issues 31037 и issue 30240 в трекере проблем с хромом (хром - открытая версия google chrome). Я не вижу другого решения, кроме как ждать исправления ошибки. Вы можете помочь им исправить его, предоставив простой тестовый кейс.

8
ответ дан 1 December 2019 в 16:15
поделиться
Другие вопросы по тегам:

Похожие вопросы: