javascript - HTML5 粘贴事件不包含多个文件
问题描述
我正在尝试处理粘贴事件并获取使用 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 上,我根本无法拦截任何文件。
解决方案
推荐阅读
- docker - 作为 Docker Compose 服务启动的容器中的进程如何找出它的 IPv4 和 IPv6 地址?
- angular - Angular 无法识别 index.html 中的 Google gtag
- html - css 彩色列表项使文本不整洁
- javascript - Javascript aws lambda无法解释的行为
- javascript - 编写代码以连接 HTML5 画布上的点
- c++ - 输出 C++ 中缺少字符
- ios - Swift - 关闭 ViewController 后停止 TableView 重新加载
- bash - 将多个文件输入程序C的Shell脚本
- java - 如何访问 application.properties 文件中的变量
- php - PHPUnit如何测试一个Repository?