Перетащите вложение из Gmail
В Chrome Gmail позволяет перетаскивать вложения из электронной почты на рабочий стол. Например, я могу открыть электронное письмо с вложением электронной таблицы Excel, щелкнуть и перетащить значок на рабочий стол, и он появится на моем рабочем столе в виде электронной таблицы Excel, которую я затем смогу открыть и отредактировать.
http://gmailblog.blogspot.com/2010/08/drag-and-drop-attachments-to-save-them.html
Я хотел бы написать код веб-приложения, которое позволит мне перетащить вложение Gmail в область размещения на моей странице и получить файл.
Проведя дополнительное исследование, я обнаружил, что, согласно "Ниндзя CSS", перетаскивание на рабочий стол работает путем установки объекта dataTransfer в событии перетаскивания, чтобы он содержал тип DownloadURL,
files[0].addEventListener("dragstart",function(evt){
evt.dataTransfer.setData("DownloadURL",fileDetails[0]);
},false);
Где fileDetails[0] - это URL-адрес объекта для загрузки.
Однако, когда я захожу на свою страницу и проверяю свой объект события, я обнаруживаю, что dataTransfer вообще ничего не содержит. Нет типа DownloadURL, нет текстовой строки или чего-то в этом роде. Это абсолютно пусто. Напротив, когда я перетаскиваю PNG-изображение или гиперссылку со страницы, объект event.dataTransfer содержит много данных.
Что мне здесь не хватает?