JS插件clipboard.js实现一键复制粘贴功能


Posted in Javascript onDecember 04, 2020

一键复制粘贴功能需要用到一个轻量级的JS插件:clipboard.js。

官网地址

下载到本地后,将其放入项目中,直接引用即可。具体实现代码如下:

<!DOCTYPE html>
<html>
 <head>
 <meta charset="UTF-8">
 <title>一键复制粘贴</title>
 <style>
 .transfer {
 width: 90%;
 margin: 20px auto;
 font-size: 18px;
 }
 .transfer button {
 margin-top: -5px;
 float: right;
 margin-left: 10px;
 background-color: rgb(3, 169, 244);
 width: 30%;
 height: 25px;
 font-size: 14px;
 color: white;
 border: 0;
 border-radius: 8%;
 }
 </style>
 </head>
 
 <body>
 <div class="transfer">
 支付宝:<span id="zfb_account">11111111111</span>
 <button onclick="copy1()" data-clipboard-action="copy" data-clipboard-target="#zfb_account" id="copy_zfb">一键复制</button>
 </div>
 <div class="transfer">
 微信:<span id="wx_account">2222222</span>
 <button onclick="copy2()" data-clipboard-action="copy" data-clipboard-target="#wx_account" id="copy_wx">一键复制</button>
 </div>
 <input type="text" />
 </body>
 
 <script type="text/javascript" src="../js/clipboard.min.js"></script>
 <script>
 function copy1() {
 var clipboard = new Clipboard('#copy_zfb');
 clipboard.on('success', function(e) {
 e.clearSelection(); //选中需要复制的内容
 alert("复制成功!");
 });
 clipboard.on('error', function(e) {
 alert("当前浏览器不支持此功能,请手动复制。")
 });
 }
 
 function copy2() {
 var clipboard = new Clipboard('#copy_wx');
 clipboard.on('success', function(e) {
 e.clearSelection(); //选中需要复制的内容
 alert("复制成功!");
 });
 clipboard.on('error', function(e) {
 alert("当前浏览器不支持此功能,请手动复制。")
 });
 }
 </script>
 
</html>

效果图:

JS插件clipboard.js实现一键复制粘贴功能

注意:如果你在项目中使用了其他的前端框架或者插件,有可能会与clipboard.js插件产生冲突。解决方法,可以使用<iframe/>标签,将此部分代码放在一个新的html文件中,然后在主文件中使用<iframe/>标签引入。

前端复制粘贴clipBoard.js的使用

<!DOCTYPE html>
<html>
<head>
 <title>ClipBoard.js使用:修改HTML</title>
 <meta charset="utf-8">
 <script src="https://cdnjs.cloudflare.com/ajax/libs/clipboard.js/2.0.0/clipboard.min.js"></script>
</head>
<body>
<!--案例一:从另一元素复制文本:通过data-clipboard-target在触发器中添加属性来实现-->
<input type="text" id="input">
<button id="copy" data-clipboard-target="#input">复制input框中的内容</button>
<textarea name="" id="" cols="30" rows="10"></textarea>


</body>
</html>
<script type="text/javascript">
 var clipboard = new ClipboardJS('#copy')
 // 显示用户反馈/捕获复制/剪切操作后选择的内容
 clipboard.on('success', function (e) {
  console.info('Action:', e.action)//触发的动作/如:copy,cut等
  console.info('Text:', e.text);//触发的文本
  console.info('Trigger:', e.trigger);//触发的DOm元素
  e.clearSelection();//清除选中样式(蓝色)
 })
 clipboard.on('error', function (e) {
  console.error('Action:', e.action);
  console.error('Trigger:', e.trigger);
 });

</script>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
js 图片轮播(5张图片)
Dec 30 Javascript
javascript中的事件代理初探
Mar 08 Javascript
jQuery.holdReady()使用方法
May 20 Javascript
详解JavaScript中setSeconds()方法的使用
Jun 11 Javascript
轻松实现javascript数据双向绑定
Nov 11 Javascript
微信小程序 video详解及简单实例
Jan 16 Javascript
详解使用vue-cli脚手架初始化Vue项目下的项目结构
Mar 08 Javascript
使用webpack3.0配置webpack-dev-server教程
May 29 Javascript
GOJS+VUE实现流程图效果
Dec 01 Javascript
React 组件渲染和更新的实现代码示例
Feb 21 Javascript
javascript将扁平的数据转为树形结构的高效率算法
Feb 27 Javascript
vue 导航守卫和axios拦截器有哪些区别
Dec 19 Vue.js
js实现图片上传并预览功能
Aug 06 #Javascript
JS解析后台返回的JSON格式数据实例
Aug 06 #Javascript
微信小程序网络封装(简单高效)
Aug 06 #Javascript
json字符串传到前台input的方法
Aug 06 #Javascript
bootstrap 路径导航 分页 进度条的实例代码
Aug 06 #Javascript
react-native使用leanclound消息推送的方法
Aug 06 #Javascript
json数据传到前台并解析展示成列表的方法
Aug 06 #Javascript
You might like
如何对PHP程序中的常见漏洞进行攻击
2006/10/09 PHP
PHP 一个比较完善的简单文件上传
2010/03/25 PHP
php垃圾代码优化操作代码
2010/08/05 PHP
CentOS6.5 编译安装lnmp环境
2014/12/21 PHP
PHP实现对xml进行简单的增删改查(CRUD)操作示例
2017/05/19 PHP
在Ubuntu 18.04上安装PHP 7.3 7.2和7.0的方法
2019/04/09 PHP
解决php用mysql方式连接数据库出现Deprecated报错问题
2019/12/25 PHP
JS 常用校验函数
2009/03/26 Javascript
vue.js学习之递归组件
2016/12/13 Javascript
JavaScript实现汉字转换为拼音的库文件示例
2016/12/22 Javascript
JS正则匹配中文的方法示例
2017/01/06 Javascript
elementUI中Table表格问题的解决方法
2018/12/04 Javascript
Js通过AES加密后PHP用Openssl解密的方法
2019/07/12 Javascript
原生js实现弹窗消息动画
2020/11/20 Javascript
[15:35]教你分分钟做大人:天怒法师
2014/10/30 DOTA
[33:15]2018DOTA2亚洲邀请赛3月30日 小组赛B组 VP VS Mineski
2018/03/31 DOTA
[43:24]VG vs Serenity 2018国际邀请赛小组赛BO2 第二场 8.17
2018/08/20 DOTA
Python实现爬取知乎神回复简单爬虫代码分享
2015/01/04 Python
在PyCharm下打包*.py程序成.exe的方法
2018/11/29 Python
Python 中的 import 机制之实现远程导入模块
2019/10/29 Python
django自定义模板标签过程解析
2019/12/14 Python
python十进制转二进制的详解
2020/02/07 Python
python2 对excel表格操作完整示例
2020/02/23 Python
python:HDF和CSV存储优劣对比分析
2020/06/08 Python
简述Html5 IphoneX 适配方法
2018/02/08 HTML / CSS
美国知名的在线旅游服务网站:Priceline
2016/07/23 全球购物
美国羊皮公司:Overland
2018/01/15 全球购物
英国高街电视:High Street TV
2018/05/22 全球购物
高三自我鉴定怎么写
2013/10/19 职场文书
《大江保卫战》教学反思
2014/04/11 职场文书
物流专业求职信
2014/06/30 职场文书
授权委托书格式
2014/07/31 职场文书
2015年度内部审计工作总结
2015/05/20 职场文书
2016年教师学习教师法心得体会
2016/01/20 职场文书
2019通用版劳动合同范本!
2019/07/11 职场文书
十大必看国产动漫排名,魁拔上线,第二曾在日本播出
2022/03/18 国漫