介绍
npm 包 universal-copy 是一个前端复制工具,可以在浏览器中复制任意内容(文本、图片、链接等),支持 IE11+、Chrome、Firefox、Safari 等主流浏览器。
该工具通过创建一个隐藏的 textarea 标签,并将需要复制的内容放入其中,然后模拟用户选中并复制的操作实现复制功能。这个过程中不会触发浏览器的 XSS 保护机制,因此可以复制跨域的内容。
安装
在命令行中输入以下命令进行安装:
npm install universal-copy --save
使用
导入
在代码中引入 universal-copy:
import UC from 'universal-copy';
复制文本
调用 UC.copyText 方法,传入需要复制的文本即可。以下是一个示例:
document.querySelector('#btn').addEventListener('click', () => { UC.copyText('要复制的文本内容'); });
复制图片
调用 UC.copyImage 方法,传入需要复制的图片地址即可。以下是一个示例:
document.querySelector('#btn').addEventListener('click', () => { UC.copyImage('https://example.com/xxx.jpg'); });
复制链接
调用 UC.copyUrl 方法,传入需要复制的链接地址即可。以下是一个示例:
document.querySelector('#btn').addEventListener('click', () => { UC.copyUrl('https://example.com'); });
注意事项
在使用 universal-copy 进行跨域复制时,需要保证被复制的内容开启了 CORS。如果被复制的内容没有开启 CORS,会导致复制失败。可以通过在被复制的内容的服务器端添加响应头解决这个问题:
Access-Control-Allow-Origin: *
结语
通过本文的介绍和示例,您已经了解了 npm 包 universal-copy 的用法和注意事项。在实际开发中,您可以将它用于实现复制链接、复制图片等功能。
接下来的时间里,您可以通过深入研究源码和实践来更好地掌握这个工具,并在实际项目中使用它实现更多的功能。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/universal-copy