js实现复制隐藏域的内容 —— clipboard.js

Posted Alyson.fu

tags:

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

起初是使用浏览器提供了 copy 命令 。

document.execCommand("copy")

如果是输入框,可以通过 select() 方法,选中输入框的文本,然后调用  copy 命令,将文本复制到剪切板。但是 select() 方法只对 <input> 和 <textarea> 有效,对于 <p> 就不好用了

 function copyUrl() {
     $("#copyinput").select();  // 选择对象  
     document.execCommand("Copy"); // 执行浏览器复制命令  
     alert("已复制到剪贴板!");
 }

但是#copyinput不能隐藏(display:none or  visibility:hidden or type="hidden"),我想要的是点击一个按钮就能复制隐藏控件的值。所以找到了clipboard.js 优秀!

以下是clipboard.js 的使用方法。

html:
<input type="hidden" id="content" value="复制的内容"/>
<input type="button" id="copyUrl" value="请点击我复制"/>

JS:
    var clipboard2 = new ClipboardJS(\'#copyUrl\', {
        text: function() {
              return $("#content").val();
            }
    });
    clipboard2.on(\'success\', function(e) {
    	  console.log("已复制到剪贴板!");
     });
    clipboard2.on(\'error\', function (e) {
     });

兼容以下浏览器版本

下载链接:https://github.com/zenorocha/clipboard.js

以上是关于js实现复制隐藏域的内容 —— clipboard.js的主要内容,如果未能解决你的问题,请参考以下文章

Clipboard.js : 移动端浏览器实现网页内容复制

js一键复制功能及一些坑

clipboard.min.js 复制表格内容

clipboard.js在弹出框中无法复制的问题

Vue使用Clipboard.JS在h5页面中复制内容

Clipboard.js实现复制