JS基于clipBoard.js插件实现剪切、复制、粘贴


Posted in Javascript onMay 03, 2016

摘要:

最近做了一个项目,其中有这样一需求:实现一个点击按钮复制链接的功能,通过网上找相关资料,找到了几个插件,ZeroClipboard是通过flash实现的复制功能,随着越来越多的提议废除flash,于是就想能不能通过js来实现复制剪切呢?

地址:https://github.com/baixuexiyang/clipBoard.js

方法:

复制

var copy = new clipBoard(document.getElementById('data'), {
beforeCopy: function() {
},
copy: function() {
return document.getElementById('data').value;
},
afterCopy: function() {
}
});

剪切

var cut = new clipBoard(document.getElementById('data'), {
beforeCut: function() {
},
Cut: function() {
return document.getElementById('data').value;
},
afterCut: function() {
}
});

粘贴

var paste = new clipBoard(document.getElementById('data'), {
beforePaste: function() {
},
paste: function() {
return document.getElementById('data').value;
},
afterPaste: function() {
}
});

补充

1.引入clipboard.min.js文件
2.定义一个button按钮,注意按钮的属性:data-clipboard-action="copy" 表示是复制行为,data-clipboard-text=‘XXX',XXX表示你要复制的内容
3.书写js,建立clipboard对象以及复制后执行的方法

演示代码如下:

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>target-div</title>
  <script src="https://cdnjs.cloudflare.com/ajax/libs/clipboard.js/2.0.0/clipboard.min.js"></script>
</head>
<body>
	<button class="btn" data-clipboard-text="Just because you can doesn't mean you should — clipboard.js">
  Copy to clipboard
</button>
<button class="btn" data-clipboard-text="ean you should — clipboard.js">
  Copy to clipboard2
</button>
  
  <script>
 
    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);
      alert('复制成功,您复制的链接为'+e.text);
      e.clearSelection();
    });
 
    clipboard.on('error', function(e) {
      console.error('Action:', e.action);
      console.error('Trigger:', e.trigger);
      alert('复制失败')
    });
		
  </script>
</body>
</html>

最近在做项目的时候需要实现复制黏贴的功能,但是js自己提供的各种方法存在兼容性问题,最后决定使用插件来实现,找了很多插件,发现了了一款比较好用的,分享给大家

Javascript 相关文章推荐
javascript 客户端验证上传图片的大小(兼容IE和火狐)
Aug 15 Javascript
Ext 今日学习总结
Sep 19 Javascript
JS中的public和private对象,即static修饰符
Jan 18 Javascript
js中arguments的用法(实例讲解)
Nov 30 Javascript
Javascript中各种trim的实现详细解析
Dec 10 Javascript
给easyui的datebox控件添加清空按钮的实现方法
Nov 09 Javascript
学习vue.js中class与style绑定
Dec 03 Javascript
jquery实现限制textarea输入字数的方法
Sep 06 jQuery
vue-cli webpack 引入swiper的操作方法
Sep 15 Javascript
Vue resource三种请求格式和万能测试地址
Sep 26 Javascript
解决vue 使用setTimeout,离开当前路由setTimeout未销毁的问题
Jul 21 Javascript
vue中父子组件的参数传递和应用示例
Jan 04 Vue.js
搞定immutable.js详细说明
May 02 #Javascript
Immutable 在 JavaScript 中的应用
May 02 #Javascript
基于javascript数组实现图片轮播
May 02 #Javascript
Javascript HTML5 Canvas实现的一个画板
Apr 12 #Javascript
bootstrap3 兼容IE8浏览器!
May 02 #Javascript
javascript实现列表切换效果
May 02 #Javascript
基于javascript编写简单日历
May 02 #Javascript
You might like
如何在smarty中增加类似foreach的功能自动加载数据
2013/06/26 PHP
PHP中使用Imagick操作PSD文件实例
2015/01/26 PHP
百度工程师讲PHP函数的实现原理及性能分析(一)
2015/05/13 PHP
ThinkPHP 5.x远程命令执行漏洞复现
2019/09/23 PHP
Javascript玩转继承(一)
2014/05/08 Javascript
详谈jQuery操纵DOM元素属性 attr()和removeAtrr()方法
2015/01/22 Javascript
Javascript中获取对象的原型对象的方法小结
2015/02/25 Javascript
js实现微博发布小功能
2017/01/12 Javascript
详解JavaScript RegExp对象
2017/02/04 Javascript
javascript中this用法实例详解
2017/04/06 Javascript
深入理解vue-loader如何使用
2017/06/06 Javascript
weui框架实现上传、预览和删除图片功能代码
2017/08/24 Javascript
vue中的计算属性的使用和vue实例的方法示例
2017/12/04 Javascript
AngularJS模态框模板ngDialog的使用详解
2018/05/11 Javascript
socket io与vue-cli的结合使用的示例代码
2018/11/01 Javascript
Windows下Node爬虫神器Puppeteer安装记
2019/01/09 Javascript
JS实现获取当前所在周的周六、周日示例分析
2019/05/11 Javascript
js console.log打印对象时属性缺失的解决方法
2019/05/23 Javascript
利用JavaScript将Excel转换为JSON示例代码
2019/06/14 Javascript
微信小程序利用云函数获取手机号码
2019/12/17 Javascript
[03:04]DOTA2英雄基础教程 影魔
2013/12/11 DOTA
python查看微信好友是否删除自己
2016/12/19 Python
Python切片索引用法示例
2018/05/15 Python
一篇文章弄懂Python中所有数组数据类型
2019/06/23 Python
基于Django实现日志记录报错信息
2019/12/17 Python
Python requests设置代理的方法步骤
2020/02/23 Python
Python列表解析操作实例总结
2020/02/26 Python
Python如何使用PIL Image制作GIF图片
2020/05/16 Python
Python实现删除某列中含有空值的行的示例代码
2020/07/20 Python
python实现经典排序算法的示例代码
2021/02/07 Python
法国综合购物网站:RueDuCommerce
2016/09/12 全球购物
美国照明、家居装饰和家具购物网站:Bellacor
2017/09/20 全球购物
学校安全工作制度
2014/01/19 职场文书
园艺专业毕业生求职信
2014/09/02 职场文书
mysql联合索引的使用规则
2021/06/23 MySQL
从零开始在Centos7上部署SpringBoot项目
2022/04/07 Servers