HTML5 событие paste не содержит более одного файла - PullRequest
1 голос
/ 17 июня 2020

Я пытаюсь обработать событие вставки и получить файлы, вставленные с помощью Javascript, следующим образом:

const pasteHandler = (e => {
  const { items: files } = e.clipboardData;
  console.log(files.length); // this maximally contains two elements on Chromium-based browsers.
                             // One of which is text, and the other one is a file.

  const parsedFiles = [];
  for( let i = 0; i < files.length; i++) {
    const file = files[i].getAsFile();
    if (file !== null)
      parsedFiles.push(file);
  }

  // do stuff with parsedFiles;
});

container.addEventListener('paste', pasteHandler);

// and later dispose the event handler
container.removeEventListener('paste', pasteHandler);

Я ожидал, что .items будет содержать все файлы, которые я вставляю , а не только один файл, который можно анализировать. Я проверяю официальную документацию ClipboardEvent здесь , и там говорится, что это экспериментальная функция. Мне интересно, я чего-то упускаю или этого ожидают? Плюс на Firefox 75 вообще никакие файлы перехватить не могу.

...