原生 js 实现复制文本

Posted 阿b説

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了原生 js 实现复制文本相关的知识,希望对你有一定的参考价值。

html:
<div id="copyText" style="padding: 20px 40px 0 40px;">账号:123456,密码:123457</div>
<input id="copyInput" style="opacity:0;"></input>
                      
js:
var text = document.getElementById("copyText").innerText;
var input = document.getElementById("copyInput");
document.getElementById("copyInput").value = text; // 修改文本框的内容
input.select(); // 选中文本
document.execCommand("copy"); // 执行浏览器复制命令

一、如果需要复制的文本在 input 或者 textarea 中
1. 获取到 dom 后,使用 .select() 来选中。
2. 使用 document.execCommand("copy"); 来复制。

二、如果需要复制的文本不在 input 或者 textarea 中
1. 先获取到需要复制的文本.
2. 把文本赋值给 input 或者 textarea。
3. input 或者 textarea 的样式可以设置为 opacity:0; 这样就透明了。
4. 然后再进行上面「 一 」中的 1 和 2 步骤。

以上是关于原生 js 实现复制文本的主要内容,如果未能解决你的问题,请参考以下文章

原生js实现点击复制功能

实现复制文本到粘贴板

原生js修改文本内容

原生JS在网页上复制的所有文字后面自动加上一段版权声明

angularJS使用ocLazyLoad实现js延迟加载

如何实现React原生倒计时圈