Загрузите несколько файлов с перетаскиванием в папкуJavascript

Форум по Javascript
Anonymous
Загрузите несколько файлов с перетаскиванием в папку

Сообщение Anonymous »

Я пытаюсь реализовать функцию, в которой пользователи могут перетаскивать несколько файлов на свой рабочий стол для прямой загрузки. Если я перетаскиваю один файл, он работает отлично, но когда я пытаюсь перетащить несколько файлов одновременно, он не работает. ("DownloadUrl", ...) Для каждого файла
это работает для одного файла, но для нескольких файлов загружается только один файл. Некоторые источники предлагают установить несколько значений загрузки с использованием Newline Sadation: < /p>
vent.dataTransfer.setData("DownloadURL", "application/pdf:file1.pdf:https://example.com/file1.pdf\napplicat ... /file2.pdf");
< /code>
Тем не менее, Chrome дает, что файл не доступен. Добавление файлов с использованием event.datatransfer.items.add (), но это, похоже, не поддерживает загрузки файлов. < /p>
код: < /p>
document.addEventListener("dragstart", function (event) {
let draggedFiles = document.querySelectorAll(".files-a[data-selected='1']");

if (draggedFiles.length === 0) {
let singleFile = event.target.closest(".files-a");
if (singleFile) {
draggedFiles = [singleFile]; // Convert single file to an array
}
} else {
draggedFiles = Array.from(draggedFiles); // Convert NodeList to an array
}

if (draggedFiles.length > 0) {
console.log("Dragging multiple files:", draggedFiles);

let downloadLinks = draggedFiles.map(file => {
let fileUrl = file.getAttribute("href");
let fileName = file.getAttribute("data-name") || fileUrl.split('/').pop();
let mimeType = getMimeType(fileUrl);
return `${mimeType}:${fileName}:${window.location.origin + "/priloge/" + fileUrl}`;
}).join("\n"); // Attempt to set multiple files

event.dataTransfer.setData("DownloadURL", downloadLinks);
}
});
< /code>
Мои вопросы:
можно ли даже перетаскивать несколько файлов для прямой загрузки в Chrome? и капля? Любая помощь будет оценена! 🚀

Подробнее здесь: https://stackoverflow.com/questions/794 ... -to-folder

Вернуться в «Javascript»