如何在 JavaScript 中将文本复制到剪贴板2025 年 1 月 7 日 | 阅读 3 分钟 您可能希望在创建复杂的网页和应用程序时包含复制功能。您的用户无需选择文本并按几个键盘按键即可复制,而是可以通过单击按钮或图标来复制文本。 当需要复制激活码、恢复密钥、代码片段等时,通常会使用此功能。为了让用户知道文本已被复制到剪贴板,您还可以包含诸如警报或屏幕文本(可以是模态框)之类的功能。 过去,人们会使用 document.execCommand() 命令来完成此操作,但该命令已被弃用。现在可以使用剪贴板 API,它允许您异步地从系统剪贴板读取和写入,并响应剪贴板活动(剪切、复制和粘贴)。JavaScript 的剪贴板 API 可用于将文本复制到剪贴板。您可以使用剪贴板 API 读取和写入剪贴板,它提供了一种与剪贴板通信的方式。 在本教程中,您将学习如何使用剪贴板 API 将文本和图像写入(复制)到剪贴板。 如何检查浏览器权限请务必注意,只有通过 HTTPS 提供的页面才兼容剪贴板 API。在尝试写入剪贴板之前,应检查浏览器的权限,以确保您拥有写入权限。您可以使用 .permissions 表达式在 navigator 中找到帮助。 以下是如何使用剪贴板 API 将文本复制到剪贴板的方法:创建一个按钮或任何将触发复制操作的元素。 例如 为将触发复制操作的按钮添加事件监听器。在事件监听器内部,您需要调用剪贴板 API 的 writeText 方法将文本写入剪贴板。 例如 在上面的示例中,我们首先使用 document.querySelector 选择按钮,然后使用 addEventListener 向其添加事件监听器。在事件监听器内部,我们调用剪贴板 API 的 writeText 方法,并将要复制的文本作为参数传递。 writeText 方法返回一个 Promise,因此我们使用 .then 来处理成功的情况,并使用 .catch 来处理任何错误。 确保在您的网站中请求“clipboard-write”权限。没有此权限,navigator.clipboard.writeText 将会失败。将以下代码行添加到 HTML 文件的 head 部分: 就是这样!当用户单击按钮时,文本将被复制到剪贴板。请注意,此方法适用于大多数现代浏览器,但某些旧浏览器可能不支持。在这种情况下,您可能需要使用备用方法,例如使用隐藏的输入字段来存储文本,然后使用 document.execCommand('copy') 选择它。 示例:在这种情况下,将使用上述策略。 输出 ![]() 在此,单击按钮可从文本字段复制文本。稍后尝试在另一个窗口中粘贴文本(例如 ctrl+v),以查看效果。 |
JavaScript 是一种动态类型语言,在变量声明和操作方面提供了灵活性。然而,这种灵活性有时会导致意外行为,尤其是在类型强制转换方面。理解隐式类型强制转换对于编写健壮且无 bug 的 JavaScript 代码至关重要。什么是隐式类型强制转换?隐式...
阅读 3 分钟
在本文中,我们将理解 JavaScript 中的组合。正如“组合”一词的意思是将两个或多个事物组合在一起以组成一个新的事物。函数组合 在 JavaScript 中,有一种称为函数组合的技术。此技术用于组合两个或多个函数...
阅读 3 分钟
JavaScript,通常缩写为 JS,是一种功能强大的编程语言,为 Web 上的大部分动态内容和交互性提供支持。JavaScript 编程的一个基本方面涉及处理键值对,这对于许多数据结构和操作来说至关重要...
阅读9分钟
在 JavaScript 中,“传递”可以指代几个概念,包括将参数传递给函数、在程序的不同部分之间传递值,以及在不同层或模块之间传递数据。让我们详细探讨这些概念,以全面理解 JavaScript 中的“传递”。传递参数给...
阅读 3 分钟
? 在本文中,我们将了解 JavaScript 中的 require() 函数。require() 函数是 JavaScript 中的一个内置函数。它是 CommonJS 模块系统的基本组成部分,用于导入模块,并允许您在代码中使用外部模块。模块类似于……
阅读 2 分钟
在 Web 开发方面,效率至关重要。开发人员寻找工具和技术的目标是最大限度地提高生产力、减少错误并加快开发过程。JavaScript 代码运行器是一种近年来流行的工具。开发人员编写、测试...
阅读 10 分钟
? 健壮的编程开发的一个必要部分是如何处理错误。抛出错误是一种处理和响应 JavaScript 代码中意外情况的方法。知道如何抛出错误的编码人员可以开发出更易于使用的代码...
5 分钟阅读
在 JavaScript 中,您可能需要对字符串执行多种操作,例如删除特定字符集,即“n”。清理用户输入、处理数据和有效删除字符通常是项目的一部分。我们将介绍不同的...
7 分钟阅读
FizzBuzz 是一个经典的编码问题,常用于技术面试中以评估候选人的基本编程技能。尽管它很简单,但它很好地测试了一个人理解条件逻辑和循环结构的能力。在本文中,我们将探讨如何实现,讨论...
阅读 10 分钟
在线开发的一个主要支柱是 JS Bin,它提供了一个用户友好且有效的环境,用于实时编写、修改和分发 JavaScript、HTML 和 CSS 代码。我们着手探索与 JS Bin 相关的各种功能、用途和最佳实践...
阅读9分钟
我们请求您订阅我们的新闻通讯以获取最新更新。
我们提供所有技术(如 Java 教程、Android、Java 框架)的教程和面试问题
G-13, 2nd Floor, Sec-3, Noida, UP, 201301, India