如何复制到剪贴板javascript

如何复制到剪贴板javascript,javascript,copy,clipboard,Javascript,Copy,Clipboard,我的代表太低,无法对原始线程发表评论。 当我使用函数copyToClipboard(val)时,val是从本地存储中获取的,剪贴板中得到的是字符串“val”,而不是val变量的值 val= localStorage.getItem("val"); copyToClipboard(val); 现在,您应该使用剪贴板API,而不是创建dom元素并调用execCommand,这似乎不再有效,但我还没有确定 document.querySelector('button')。addEventList

我的代表太低,无法对原始线程发表评论。

当我使用函数
copyToClipboard(val)
时,val是从本地存储中获取的,剪贴板中得到的是字符串“val”,而不是val变量的值

val= localStorage.getItem("val");
copyToClipboard(val);

现在,您应该使用剪贴板API,而不是创建dom元素并调用
execCommand
,这似乎不再有效,但我还没有确定

document.querySelector('button')。addEventListener('click',()=>{
让copyText='Random'+Math.Random();
navigator.permissions.query({name:“剪贴板写入”})
。然后(result=>result.state==“已授予”| | result.state==“提示”)
.然后(()=>navigator.clipboard.writeText(copyText))
.then(()=>console.log('Copied:',copyText))
.catch(e=>console.log('未能复制,因为:',e));
});

Copy random text
现在有了一个剪贴板API,您应该使用它来代替创建dom元素和调用
execCommand
,这似乎不再有效,但我还没有确定

document.querySelector('button')。addEventListener('click',()=>{
让copyText='Random'+Math.Random();
navigator.permissions.query({name:“剪贴板写入”})
。然后(result=>result.state==“已授予”| | result.state==“提示”)
.然后(()=>navigator.clipboard.writeText(copyText))
.then(()=>console.log('Copied:',copyText))
.catch(e=>console.log('未能复制,因为:',e));
});

copyToClipboard
你应该让你的问题自立(即,包括
copyToClipboard
)的相关代码。你应该让你的问题自立(即,包括
copyToClipboard
)的相关代码。当我运行代码片段时,它输出:“未能复制,因为:{}”当我在我的页面上运行这个时,我得到:TypeError:“PermissionDescriptor'clipboard write'的'name'成员不是枚举PermissionName的有效值”确定,此异步剪贴板API已发送到Chrome,在Firefox中运行时无法工作它输出的代码段:“复制失败,因为:{}”在我的页面上运行此操作时,我得到:“TypeError:”PermissionDescriptor'clipboard write'的'name'成员不是枚举PermissionName的有效值“好的,此异步剪贴板API已发送到Chrome,在Firefox中无法工作