在前端开发中,有时需要获取用户的剪贴板内容。本文将介绍如何在 JavaScript 中获取当前剪贴板中的内容。
API
获取剪贴板内容的主要 API 是 navigator.clipboard.readText()
,它返回一个 Promise 对象。调用该方法时,如果用户已经授权访问剪贴板,则 Promise 将被解析,并返回剪贴板中的文本;否则,Promise 将被拒绝,并抛出一个错误。
navigator.clipboard.readText() .then(text => console.log("剪贴板中的文本为:" + text)) .catch(err => console.error("无法访问剪贴板:" + err));
注意,由于安全原因,必须在用户的交互事件(例如点击按钮)中调用 navigator.clipboard.readText()
方法,否则浏览器可能会拒绝访问剪贴板。
兼容性
navigator.clipboard.readText()
方法是比较新的 API,目前只有 Chrome、Firefox 和 Edge 浏览器支持。如果需要在旧版浏览器上使用该功能,可以考虑使用 Clipboard.js 等第三方库,它们提供了类似的功能,并且具备更好的兼容性。
示例代码
下面是一个获取剪贴板内容的完整示例:
-- -------------------- ---- ------- --------- ----- ------ ------ ----- ---------------- ---------------------- ------- ------ ------- ------------------------- -------- ----- --- - ------------------------------- ----------------------------- -- -- - ------------------------------ ---------- -- ----------------------- - ------ ---------- -- ------------------------ - ------ --- --------- ------- -------
点击“获取剪贴板内容”按钮后,控制台将输出当前剪贴板中的文本。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/26609