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 相关文章推荐
IE innerHTML,outerHTML所引起的问题
Jun 04 Javascript
JavaScript Math.floor方法(对数值向下取整)
Jan 09 Javascript
在JavaScript中使用JSON数据
Feb 15 Javascript
解析Node.js异常处理中domain模块的使用方法
Feb 16 Javascript
微信小程序 setData的使用方法详解
Apr 20 Javascript
在JS中如何把毫秒转换成规定的日期时间格式实例
May 11 Javascript
Javascript循环删除数组中元素的几种方法示例
May 18 Javascript
JavaScript之RegExp_动力节点Java学院整理
Jun 29 Javascript
原生JS实现Ajax跨域请求flask响应内容
Oct 24 Javascript
详解新手使用vue-router传参时注意事项
Jun 06 Javascript
Vue实现按钮级权限方案
Nov 21 Javascript
JavaScript面向对象核心知识与概念归纳整理
May 09 Javascript
搞定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
一个改进的UBB类
2006/10/09 PHP
CodeIgniter中使用cookie的三种方式详解
2014/07/18 PHP
Laravel 5.1 on SAE环境开发教程【附项目demo源码】
2016/10/09 PHP
浅谈PHP无限极分类原理
2019/03/14 PHP
jQuery1.3.2 升级到jQuery1.4.4需要修改的地方
2011/01/06 Javascript
jQuery1.6 使用方法二
2011/11/23 Javascript
js获得鼠标的坐标值的方法
2013/03/13 Javascript
jquery获取复选框被选中的值
2014/03/22 Javascript
js判断上传文件类型判断FileUpload文件类型代码
2014/05/20 Javascript
jQuery复制节点用法示例(clone方法)
2016/09/08 Javascript
IOS中safari下的select下拉菜单文字过长不换行的解决方法
2016/09/26 Javascript
JS排序之选择排序详解
2017/04/08 Javascript
vue组件实现可搜索下拉框扩展
2020/10/23 Javascript
微信小程序收藏功能的实现代码
2018/06/12 Javascript
vue添加axios,并且指定baseurl的方法
2018/09/19 Javascript
详解vue-cli 脚手架 安装
2019/04/16 Javascript
Python利用ansible分发处理任务
2015/08/04 Python
解决phantomjs截图失败,phantom.exit位置的问题
2018/05/17 Python
详解如何将python3.6软件的py文件打包成exe程序
2018/10/09 Python
使用python切片实现二维数组复制示例
2019/11/26 Python
手动安装python3.6的操作过程详解
2020/01/13 Python
Pycharm连接远程服务器过程图解
2020/04/30 Python
Python中实现输入一个整数的案例
2020/05/03 Python
python算的上脚本语言吗
2020/06/22 Python
CSS3属性background-size使用指南
2014/12/09 HTML / CSS
介绍一下Make? 为什么使用make
2013/12/08 面试题
通息工程毕业生自荐信
2013/10/16 职场文书
德语专业求职信
2014/03/12 职场文书
计算机毕业生自荐信范文
2014/03/23 职场文书
信息工作经验交流材料
2014/05/28 职场文书
2014年销售人员工作总结
2014/11/27 职场文书
物业接待员岗位职责
2015/04/15 职场文书
2015年九一八事变纪念活动实施方案
2015/05/06 职场文书
幼儿教师师德培训心得体会
2016/01/09 职场文书
读鲁迅先生的经典名言
2019/08/20 职场文书
德劲DE1107指针试高灵敏度全波段收音机机评
2022/04/05 无线电