是的,可以使用纯 JavaScript 在没有库的情况下将图片复制到剪贴板上。以下是一种实现方法:
- 首先,使用 XMLHttpRequest 或 Fetch API 从服务器获取图片的 URL。
- 创建一个新的 Image 对象,并将获取到的图片 URL 赋值给它的 src 属性。
- 在 Image 对象的 onload 事件中,创建一个新的 Canvas 对象,并将图片绘制到 Canvas 上。
- 使用 Canvas 的 toDataURL 方法将图片转换为 base64 编码的字符串。
- 创建一个新的 textarea 元素,并将 base64 编码的图片字符串赋值给它的 value 属性。
- 将 textarea 元素添加到页面中。
- 使用 JavaScript 选中 textarea 元素的内容。
- 使用 document.execCommand('copy') 方法将选中的内容复制到剪贴板上。
- 最后,将添加的 textarea 元素从页面中移除。
这样,图片就会被复制到剪贴板上了。
请注意,由于浏览器的安全限制,上述方法在某些浏览器中可能无法正常工作。此外,不同浏览器对于复制到剪贴板的操作也有不同的支持方式。因此,建议在实际应用中使用专门的库来处理剪贴板操作,以确保兼容性和稳定性。
参考链接: