欢迎大家来到IT世界,在知识的湖畔探索吧!
构建网站时经常会用到将文本复制到剪贴板的需求,下面是常用做法,兼容旧版浏览器。
- 创建<input>元素,将其值设置为要复制到剪贴板上的字符串。
- 将<input>元素附加到当前 HTML 文档并使用 CSS 将其隐藏以防止闪烁。
- 使用InputElement.select()选择<input>元素的内容。
- 使用Document.execCommand(‘copy’) 将 <input>的内容复制到剪贴板。
- 从文档中删除<input>元素。
Javascript 代码:
const copyToClipboard = str => {
const el = document.createElement('input');
el.value = str;
el.setAttribute('readonly', '');
el.style.position = 'absolute';
el.style.left = '-9999px';
document.body.appendChild(el);
el.select();
document.execCommand('copy');
document.body.removeChild(el);
};
欢迎大家来到IT世界,在知识的湖畔探索吧!
document.execCommand – Web API 接口参考 | MDN
如果要实现其它高级功能,可以使用现代浏览器的 Clipboard – Web API 接口参考 | MDN
使用 navigator.clipboard.writeText 写入文本至操作系统剪贴板
欢迎大家来到IT世界,在知识的湖畔探索吧!const copyToClipboard = str => {
if (navigator && navigator.clipboard && navigator.clipboard.writeText)
return navigator.clipboard.writeText(str);
return Promise.reject('The Clipboard API is not available.');
};
免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://itzsg.com/16713.html