我正在尝试使用JavaScript将图像复制到剪贴板。我已经尝试过这些解决方案,但是出现错误:
有这样一篇文章,显示为:
但是这会产生错误:
但这也会导致以下错误:
请注意,我只需要处理客户端上传的本地图片(源代码为数据URI)。因此,所有内容都在同一服务器上,不需要后端。
Uncaught (in promise) DOMException: Document is not focused.
有这样一篇文章,显示为:
try {
const imgURL = '/images/generic/file.png';
const data = await fetch(imgURL);
const blob = await data.blob();
await navigator.clipboard.write([
new ClipboardItem({
[blob.type]: blob
})
]);
console.log('Image copied.');
} catch(e) {
console.error(e, e.message);
}
但是这会产生错误:
。
VM2303:12 TypeError: Failed to fetch "Failed to fetch"
我也尝试了将图像数据URI转换为Blob并使用:
...连同CORS警告一起。
navigator.clipboard.write([
new ClipboardItem({
'image/png': blob
})
])
但这也会导致以下错误:
…
Uncaught (in promise) DOMException: Document is not focused
请注意,我只需要处理客户端上传的本地图片(源代码为数据URI)。因此,所有内容都在同一服务器上,不需要后端。
window.focus();
吗? - Andre Nuechter