javascript - iframe 中的文本可以复制到剪贴板吗?
问题描述
在我的 React 应用程序中,我在遍历数组后显示卡片(因此理论上可以有n
卡片)。
我希望在用户单击该卡时复制卡中显示的文本。然而,问题是反应应用程序是在 iframe 中呈现的。
当应用程序位于单个选项卡中时,复制功能有效。但是,当从 iframe 中尝试时,我遇到了这个错误:
Uncaught (in promise) DOMException: Disabled in this document by Feature Policy.
这与Google的这项政策变更有关。有没有办法让这个功能正常工作?
附加信息:在 iframe 中呈现的应用与父应用不共享同一个域
背景阅读链接:
解决方案
如此处所述:
要在 iframe 中使用 API,您需要使用Permissions Policy启用它,该策略定义了一种机制,允许有选择地启用和禁用各种浏览器功能和 API。具体来说,您需要通过 或 中的一个或两个
clipboard-read
,clipboard-write
这取决于您的应用程序的需要。
<iframe src="index.html" allow="clipboard-read; clipboard-write"></iframe>
如果您只想能够将文本复制到剪贴板(即您不需要能够以编程方式读取它),那么您只需要clipboard-write
权限:
<iframe src="index.html" allow="clipboard-write"></iframe>
推荐阅读
- android - 找不到 android.support.v7.widget.Toolbar
- android - 在哪里为移动应用编写测试用例
- powerbi - 在每一行上复制一个值
- ansible - 与 Ansible 并行运行 python 脚本
- c# - 在 C# 中检索网络共享权限的问题
- java - spring 如何使用 localhost 而不是 localhost IP?
- r - gsub 匹配后的第一个单词
- java - 如何将麦克风音频流式传输到同一设备抛出扬声器
- wso2 - 构建WSO2 EI 6.5.0的源代码
- facebook - Facebook webhook,如何从中间 id 获取对话 id