【发布时间】:2021-02-19 17:41:40
【问题描述】:
所有 Youtube 教程似乎都在教授现已弃用的 Document.execCommand()。我试了一下,因为这个 MDN website 上的例子。也许还有其他方法?
navigator.permissions.query({name: "clipboard-write"}).then(result => {
if (result.state == "granted" || result.state == "prompt") {
/* write to the clipboard now */
console.log("safe");
}
});
let button = document.querySelector('button');
button.addEventListener('click', (e) => {
let data = "red";
navigator.clipboard.writeText(data).then(function() {
/* success */
console.log("success", data);
}, function() {
console.log("fail")
/* failure */
});
});
<button>Click me</button>
【问题讨论】:
-
您的示例代码运行良好;只是不在 IFRAME 内(如 StackOverflow 的代码 sn-ps)。我将它粘贴到 Chrome 中的浏览器控制台中,没有问题。有关何时可以在此处使用剪贴板 API 的更多信息:sitepoint.com/clipboard-api
-
感谢@JohnUleis 的大力帮助
标签: javascript html