📅  最后修改于: 2023-12-03 15:09:37.808000             🧑  作者: Mango
在现代的网页应用程序中,经常需要能够复制粘贴文本到/从剪贴板中,为此,Javascript 提供了 Clipboard API 来实现该功能。本文将介绍如何使用 Clipboard API 来将文本复制到剪贴板。
Clipboard API 是一个比较新的 API,因此并不是所有的浏览器都支持它。尽管如此,使用 Clipboard API 的过程实际上非常简单:
// 获取剪贴板对象
const clipboard = navigator.clipboard;
// 复制文本
clipboard.writeText('要复制的文本')
.then(() => console.log('已成功复制到剪贴板'))
.catch(err => console.error(`无法复制文本: ${err}`));
上述代码中,首先获取了剪贴板对象,然后使用 writeText()
方法将指定的文本复制到剪贴板中。
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>复制到剪贴板</title>
</head>
<body>
<button id="copy-btn">点击复制到剪贴板</button>
<script>
const btn = document.querySelector('#copy-btn');
const clipboard = navigator.clipboard;
btn.addEventListener('click', () => {
clipboard.writeText('要复制的文本')
.then(() => alert('已成功复制到剪贴板'))
.catch(err => console.error(`无法复制文本: ${err}`));
});
</script>
</body>
</html>
如上面的代码所示,我们在一个 HTML 文档中创建了一个按钮,当用户点击按钮时,将选择的文本复制到剪贴板中。
以下是一些关于使用 Clipboard API 的实用技巧:
input
或 textarea
元素上使用 select()
方法来选择其中的全部文本。Clipboard API 内置在浏览器中,并且可以方便地使用来将文本复制到剪贴板中。虽然它并不广泛支持,但在大多数现代浏览器上可行。使用 Clipboard API,您可以在 Web 应用程序中提供更好的用户体验,以更方便的方式管理从剪贴板中复制的内容。