一个不分离项目的紧急需求, 需要添加一个复制功能, 作为一个小菜鸟, 自己写肯定写不出, 也记不住那么多方法, 之前分离项目, npm install 安装插件就好了, 但是不分离项目不好找对应插件, 期望使用原生js
- 在经过百度, CSDN, 博客园这些文抄公之后, 历经九九八十一难, 终于找到了, 特此在这里记录
//点击文本框复制其内容到剪贴板上方法
function copyToClipboard(str) {
var cinput = document.createElement('textarea'); // 动态创建textarea元素
cinput.value = str; // 把需要复制的内容赋值到textarea的vlaue上
cinput.setAttribute('readOnly', 'true');
//注意大小写,不写的话手机端会自动弹出输入框
document.body.appendChild(cinput); // 把创建的textarea元素添加进body元素内
cinput.select(); // 选择对象
document.execCommand("Copy"); // 执行浏览器复制命令
cinput.className = 'oInput';
cinput.style.display = 'none';
cinput.style.opacity = '0';
alert("复制成功");
}
// 复制的方法
function copyText(text, callback){ // text: 要复制的内容, callback: 回调
var tag = document.createElement('textarea');
tag.setAttribute('id', 'cp_hgz_input');
tag.value = text;
document.getElementsByTagName('body')[0].appendChild(tag);
document.getElementById('cp_hgz_input').select();
document.execCommand('copy');
document.getElementById('cp_hgz_input').remove();
if(callback) {callback(text)}
}
方法都差不多, 起码又用, 最后吐槽, 文抄公能不能抄点有用的, 也不管人家博主写的代码有用没用, 看到人家写了就往自己博客上套, 出错的地方也一样.也不检查或者自己运行一下