时间:2021-11-04 10:01:35 | 栏目:JavaScript代码 | 点击:次
新学习JavaScript,就碰到这么一个需求,几乎网上的方法都试过了。写出了总结下
使用的方法:clipboard
插件下载地址:https://github.com/zenorocha/clipboard.js/tree/master
引入插件:目录\clipboard.js-master\dist\clipboard.min.js
目录中有各种demo,分别实现了固定的文字复制,input的复制等等,可以看下找找思路;
下边来记录下使用的方式:
一:引入插件:
<script src="js/clipboard.min.js" type="text/javascript"></script>
二:给标签添加属性:data-clipboard-text
<div id="btn" data-clipboard-text="1"> <span>Copy</span> </div>
三:定义script :实现复制功能---(写的内部的script,外部的总是报错,找不到类,新手不大懂,以后再补充)
<script> var clipboard = new Clipboard('btn'); clipboard.on('success', function(e) { e.clearSelection(); //复制成功 }); clipboard.on('error', function(e) { //复制失败 }); </script>
补充:new Clipboard()----参数为id class都可以,跟css定义一样 id 或者.class
四:自定义复制的内容;
new Clipboard('.btn', { target: function(trigger) { return trigger.nextElementSibling; } });
通过return返回想复制的内容,
五:列表页复制每条列表内容
可以给每个item自定义属性data-clipboard-text即可
div.setAttribute("data-clipboard-text","asdf");
补充:电脑浏览器几乎都可以支持,手机上安卓可以,苹果有点问题,需要把标签设置成button