使用evt.clipboardData.getData粘贴浏览器元数据?

时间:2016-12-14 09:54:28

标签: javascript browser metadata clipboarddata

我发现以下功能允许我在用户粘贴文本时获取数据。

document.addEventListener('paste', function (evt) {
  console.log(evt.clipboardData.getData('text/plain'));
});

我想知道是否有一种格式可以让我获得相关的元数据? (例如Word格式化,Excel等)

最好是程序中立的解决方案,但即使能够获得字格式也是有用的。

1 个答案:

答案 0 :(得分:1)

据我所知,与程序相关的元数据(例如,在两个单词实例之间粘贴)在进入浏览器之前被完全剥离。

在chrome控制台中使用以下内容输出两个对象,您可以单击这些对象以查看某些元数据。似乎数据都有一种html /文本,确保浏览器中可能没有元数据。

document.addEventListener('paste', function (evt) {
  console.log(evt.clipboardData.items);
});

还有一个名为getAsFile()的功能,例如evt.clipboardData.items[0].getAsFile()&还items[1],因为如果您的复制/粘贴缓冲区中有文本,则始终至少有两个项目。

然而,尽管我的剪贴板有文字,但使用此函数似乎仍会返回null