我有这个功能,在基于unix的操作系统(Linux,MacOS)完美工作,但不知何故,不适用于Windows,它只是简单地不添加任何东西到剪贴板.

这是在NextJS应用程序中运行的.

export const copyRichContent = async rich => {

    const html = new Blob([rich], { type: 'text/html' })
    const data = new ClipboardItem({ 'text/html': html })
    await navigator.clipboard
         .write([data])
         .then(e => console.log('All good', e))
         .catch(err => {
           console.error(err)
         })

}

  • 我已经试过用剪贴板-PollyFill
  • 我在装有Firefox和Chrome的Windows上try 过
  • 如果我使用MIME类型"文本/纯文本",它可以工作(但我需要使用html)
  • 应用程序安全运行(使用HTTPS)
  • 我确认我拥有写入文本和写入文本延迟权限
  • CATCH块中没有错误

我希望在Windows机器上工作,无论浏览器是什么.

推荐答案

我没有将复制的数据粘贴到RCE中(真是个笨蛋,对吧?)

Javascript相关问答推荐

如何按预期聚合SON数据?

获取加载失败:获取[.]添加时try 将文档添加到Firerestore,Nuxt 3

yarn安装一个本地npm包,以便本地包使用main项目的node_modules(ckeditor-duplicated-modules错误)

docx.js:如何在客户端使用文档修补程序

jQuery s data()[storage object]在vanilla JavaScript中?'

Chart.js 4.4.2,当悬停在一个数据点上时,如何在工具提示中拥有多个数据点/标签?

我正在建立一个基于文本的游戏在react ,我是从JS转换.我怎样才能使变量变呢?

Angular 中的类型错误上不存在获取属性

JQuery Click事件不适用于动态创建的按钮

有条件重定向到移动子域

在开发期间,Web浏览器如何运行&qot;.jsx&qot;文件?

搜索功能不是在分页的每一页上进行搜索

使用线性插值法旋转直线以查看鼠标会导致 skip

如何使用Reaction路由导航测试挂钩?

如何在Java脚本中并行运行for或任意循环的每次迭代

如果查询为空,则MongoDB将所有文档与$in匹配

暂停后只有一次旋转JS

如何为两条动态路由创建一个页面?

:host::ng-Deep不将样式应用于material 复选框

从客户端更新MongoDB数据库