js复制文本到剪贴板

一个不分离项目的紧急需求, 需要添加一个复制功能, 作为一个小菜鸟, 自己写肯定写不出, 也记不住那么多方法, 之前分离项目, 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)}
    }

方法都差不多, 起码又用, 最后吐槽, 文抄公能不能抄点有用的, 也不管人家博主写的代码有用没用, 看到人家写了就往自己博客上套, 出错的地方也一样.也不检查或者自己运行一下

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容