Javascript on paste: 检查粘贴的内容是否来自word

Javascript on paste: check if pasted content comes from word

是否可以检查粘贴内容的来源? 因为我需要检查粘贴的内容是否是从word文件复制的...

那么,javascript 中有没有像这样的东西:

  example.on('paste', function (event) {
     if (event.source == "Word") {
        // do something
     }
  }

提前致谢!

我不这么认为,你需要剪贴板API,而且你只能执行复制和粘贴命令。这将允许您只读取或写入内容。

https://developer.mozilla.org/en-US/docs/Mozilla/Add-ons/WebExtensions/Interact_with_the_clipboard

如果您查看剪贴板 API,您只会得到一个读取字符串或一个 DataTransfer 实例。其中不包含有关剪贴板内容来源的任何信息。

https://developer.mozilla.org/en-US/docs/Web/API/Clipboard

不,这在 web 中是不可能的,因为如果您从任何来源复制任何文本,它将是相同的,而且您只是复制该文本,而不是源信息, 所以那是不可能的

我需要删除所有办公代码。这些是 class-以 Mso

开头的属性

为什么不检查您需要修复的内容?

const text = (event.clipboardData || window.clipboardData).getData('text')
if (text && text.toUpperCase().match(/"MSO/)) ...