clipboard.js实现复制功能 #90
Anuluca Date : 2021-01-12 Tags : 2
使用 clipboard.js 可以在 js 原生的基础上很简单就能实现点击复制功能,且支持包括IE9的所有主流浏览器,在这里记录一下我的使用过程。
官网:
clipboardjs.com
1.安装
1
| $ npm install lipboard --save
|
2.引入 CDN
引入下面任意一个即可。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
| <script src="dist/clipboard.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/clipboard@2.0.6/dist/clipboard.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/clipboard.js/2.0.6/clipboard.min.js"></script>
<script src="https://cdn.rawgit.com/zenorocha/clipboard.js/v2.0.6/dist/clipboard.min.js"></script>
<script src="https://rawcdn.githack.com/zenorocha/clipboard.js/v2.0.6/dist/clipboard.min.js"></script>
<script src="https://unpkg.com/clipboard@2/dist/clipboard.min.js"></script>
<script src="https://cdn.statically.io/gh/zenorocha/clipboard.js/v2.0.6/dist/clipboard.min.js"></script>
|
3.初始化复制功能
1 2 3 4 5 6 7 8 9 10
| <script> let clipboard = new ClipboardJS(".btn"); clipboard.on("success", function (e) { alert("复制成功!"); }); clipboard.on("error", function (e) { alert("插件加载错误"); }); </script>
|
到此为止,已经可以在任意地方实现复制功能了。
4.一般用法(左侧文本,右侧按钮)
1 2 3 4 5
| <input id="foo" value="文本value" />
<button class="btn" data-clipboard-target="#foo">Copy</button>
|
5.剪切(仅适用于input和textarea标签)
1 2 3 4 5 6 7
| <textarea id="bar">豫章故郡,洪都新府。星...</textarea>
<button class="btn" data-clipboard-action="cut" data-clipboard-target="#bar"> Cut to clipboard </button>
|
6.点击按钮复制元素内data-clipboard-text属性值
1 2 3
| <button class="btn" data-clipboard-text="我是按钮内data-clipboard-text属性值"> Copy to clipboard </button>
|