记录一个非常实用的一键复制前端插件 Clipboard.js
导读:
本文记录一个非常实用的前端插件 Clipboard.js,Clipboard.js 实现了纯JS将内容一键复制到系统剪贴板的功能。下面是该插件的使用说明:
clipboard.js介绍
clipboard.js现代化的拷贝文字,不依赖flash,不依赖其他框架,gzip压缩后只有3kb大小。
「拷贝文字不应当是一件困难的事,不需要过多繁杂的配置或者下载很多脚本文件.最重要的,它不应该依赖flash或者其他框架,应该保持简洁」
「这就是创造clipboard.js的原因和目的」
clipboard.js的使用
1、安装:两种安装方式
(1)通过npm工具安装
npm install clipboard --save
(2)CDN引入
<script src="https://cdn.jsdelivr.net/npm/clipboard@2.0.6/dist/clipboard.min.js"></script>
或七牛云CDN
<script src="https://cdn.staticfile.org/clipboard.js/2.0.4/clipboard.min.js"></script>
2、使用方法(一)
- 先引入clipboard.js见上文所示。
- 设置复制剪贴的内容
从另一个元素复制内容。你可以给目标元素添加一个data-clipboard-target属性来实现这个功能
<input id="copy" value="三贝计算网">
<!-- Trigger -->
<button class="btn" data-clipboard-target="#copy">
<img src="assets/clippy.svg" alt="Copy to clipboard">
</button>
你还可以定义一个 data-clipboard-action 属性来指明你想要复制还是剪切内容。
<textarea id="copy">三贝计算网...</textarea>
<!-- Trigger -->
<button class="btn" data-clipboard-action="cut" data-clipboard-target="#copy">
Cut to clipboard
</button>
复制当前的内容,需要给目标元素设置一个data-clipboard-text属性即可。
<button class="btn" data-clipboard-text="Just because you can doesn't mean you should — clipboard.js">
Copy to clipboard
</button>
3.事件
如果你想要展示一些用户反馈,或者在用户复制/剪切后获取已经选择的文字,这里有个示例供你参考。我们通过触发自定义事件,比如success和error让你可以设置监听并实现自定义逻辑。
var clipboard = new ClipboardJS('.btn');
clipboard.on('success', function(e) {
console.info('Action:', e.action);
console.info('Text:', e.text);
console.info('Trigger:', e.trigger);
e.clearSelection();
});
clipboard.on('error', function(e) {
console.error('Action:', e.action);
console.error('Trigger:', e.trigger);
});
3、使用方法(二)
如果你不想修改HTML,该插件提供了一个非常方面的命令式的API给你使用。你需要做的就是声明一个函数,做一些处理,并返回一个值。
例如,你希望动态设置target,你需要返回一个node节点。
new ClipboardJS('.btn', {
target: function(trigger) {
return trigger.nextElementSibling;
}
});
如果你希望动态设置text, 你需要返回字符串。
new ClipboardJS('.btn', {
text: function(trigger) {
return trigger.getAttribute('aria-label');
}
});
如果在 Bootstrap 模态框(Modals)中使用,或是在其他修改焦点的类库中使用,你会希望将获得焦点的元素设置为 container属性的值。
new ClipboardJS('.btn', {
container: document.getElementById('modal')
});
如果你使用单页应用,你可能想要更加精确地管理 DOM 的生命周期。你可以清理事件以及创建的对象。
var clipboard = new ClipboardJS('.btn');
clipboard.destroy();
相关推荐
记录一个非常实用的一键复制前端插件 Clipboard.js
本文记录一个非常实用的前端插件 Clipboard.js,Clipboard.js 实现了纯JS将内容一键复制到系统剪贴板的功能。下面是该插件的使用说明:clipboard.js介绍clipboard…
2022-05-23 20:08:19 | 分类:默认 | 作者:myerob | 阅读:576 | 标签:记录 一个 一键 复制 前端 插件 Clipboard.js | 收藏
记录一个合成图片插件html2canvas.js(JS前端开发)
本文记录一个前端开发中端常用的合成图片插件(html2canvas.js),在H5开发中,我们经常会遇上动态生成海报的需求,而在Web前端中,生成图片非Canvas莫属。html2canvas.js就…
2022-05-23 20:29:09 | 分类:JS | 作者:myerob | 阅读:969 | 标签:合成 图片 插件 html2canvas.js JS 前端 开发 | 收藏
记录一个前端生成二维码的插件jquery.qrcode.js(JS前端开发)
本期记录一个非常实用的前端动态生成二维码的插件jquery.qrcode.js,jquery.qrcode.js是一个能够在客户端生成矩阵二维码QRCode的jquery插件,使用它可以很方便的在页面…
2022-05-23 21:02:27 | 分类:JS | 作者:myerob | 阅读:271 | 标签:前端 二维码 插件 jqueryqrcode JS 前端 开发 | 收藏
jQuery 滚动条插件nicescroll 使用方法、常见配置和事件回调使用说明
nicescroll是一款基于jQuery的滚动条插件,使用简单,功能强大,较mCustomScrollbar而言:资源文件少,只要一个jquery.nicescroll.min.js即可,无须css…
2022-12-05 22:16:17 | 分类:JS | 作者:myerob | 阅读:245 | 标签:jQuery nicescroll | 收藏
滚动条插件 NiceScroll 使用详解
有时为了保持页面风格的统一,我们需要修改滚动条的样式。虽然我们可以通过 CSS 设置滚动条各部分的颜色样式,但这种方式不支持老版本的浏览器。而且不同的浏览器下,CSS 滚动条属性的写法也不一样,如果各…
2022-12-05 22:23:19 | 分类:JS | 作者:myerob | 阅读:443 | 标签:滚动条插件 NiceScroll 使用详解 | 收藏
- 阅读榜
- 1. U.FL座 IPEX/IPX接头1代,2代,3代,4代,5代区分对照图
- 2. 概率统计学中95%置信区间的系数1.96怎么得到的?
- 3. 什么情况下免征教育附加税,地方教育附加税?两附加费优惠政策
- 4. 个人所得税申报系统(扣缴端)如何删除已离职人员信息
- 5. NTC热敏电阻B值3950(温度系数对照表)
- 6. CSS中设置height:100%无效的原因分析和解决方法
- 7. LCEDA如何将两块不同的PCB拼到一块板上,PCB拼板教程
- 8. ASCII码一览表,ASCII码对照表
- 9. php页面最大执行时间 set_time_limit函数不起作用
- 10. 关于威尼斯目前账户显示注单未同步审核提不了现怎么解决?