navigator.clipboard 是 JavaScript 中用于读取和写入剪贴板数据的 API。它提供了一种现代化的方式来访问用户剪贴板,可以处理文本、图像等类型的数据。以下是如何使用 navigator.clipboard API 的基本示例:
1. 写入剪贴板数据要将文本写入剪贴板,可以使用 navigator.clipboard.writeText() 方法:
const textToCopy = "Hello, clipboard!"; navigator.clipboard.writeText(textToCopy) .then(() => { console.log('Text copied to clipboard successfully'); }) .catch(err => { console.error('Could not copy text: ', err); });navigator.clipboard.writeText(text) 接受一个文本字符串作为参数,将该文本写入剪贴板。返回的 Promise 在写入成功或失败后执行相应的回调函数。2. 读取剪贴板数据
要从剪贴板中读取文本数据,可以使用 navigator.clipboard.readText() 方法:
navigator.clipboard.readText() .then(clipboardText => { console.log('Text from clipboard:', clipboardText); }) .catch(err => { console.error('Failed to read clipboard contents: ', err); });navigator.clipboard.readText() 返回一个 Promise,在成功时提供剪贴板中的文本数据。如果剪贴板中没有文本或者无法访问剪贴板(如权限受限),则会在 Promise 的 catch 分支中处理错误。注意事项:权限: 对于某些浏览器,读取和写入剪贴板数据可能需要用户的显式授权(例如在 HTTPS 环境中)。兼容性: navigator.clipboard API 在现代浏览器中已经得到了很好的支持,但在旧版浏览器中可能不完全支持或需要前缀。
通过 navigator.clipboard API,你可以方便地在 JavaScript 中实现与用户剪贴板的交互,无需依赖 Flash 或其他插件。
网友回复
为啥所有的照片分辨率提升工具都会修改照片上的图案细节?
js如何在浏览器中将webm视频的声音分离为单独音频?
微信小程序如何播放第三方域名url的mp4视频?
ai多模态大模型能实时识别视频中的手语为文字吗?
如何远程调试别人的chrome浏览器获取调试信息?
为啥js打开新网页window.open设置窗口宽高无效?
浏览器中js的navigator.mediaDevices.getDisplayMedia屏幕录像无法录制SpeechSynthesisUtterance产生的说话声音?
js中mediaRecorder如何录制window.speechSynthesis声音音频并下载?
python如何直接获取抖音短视频的音频文件url?
js在浏览器中如何使用MediaStream与MediaRecorder实现声音音频多轨道混流?