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 相关文章推荐
基于JQuery实现CheckBox全选全不选
Jun 27 Javascript
JavaScript单元测试ABC
Apr 12 Javascript
js获取网页高度(详细整理)
Dec 28 Javascript
js隐藏与显示回到顶部按钮及window.onscroll事件应用
Jan 25 Javascript
js禁止页面复制功能禁用页面右键菜单示例代码
Aug 29 Javascript
jquery中attr和prop的区别分析
Mar 16 Javascript
深入探寻seajs的模块化与加载方式
Apr 14 Javascript
Bootstrap 粘页脚效果
Mar 28 Javascript
在vue中多次调用同一个定义全局变量的实例
Sep 25 Javascript
JS实现audio音频剪裁剪切复制播放与上传(步骤详解)
Jul 28 Javascript
jQuery使用hide()、toggle()函数实现相机品牌展示隐藏功能
Jan 29 jQuery
如何用JS实现网页瀑布流布局
Apr 24 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
同时提取多条新闻中的文本一例
2006/10/09 PHP
php删除字符串末尾子字符,删除开始字符,删除两端字符(实现代码)
2013/06/27 PHP
PHP实现的自定义数组排序函数与排序类示例
2016/11/18 PHP
PHP实现微信对账单处理
2018/10/01 PHP
CSS中一些@规则的用法小结
2021/03/09 HTML / CSS
模拟多级复选框效果的jquery代码
2013/08/13 Javascript
js加载之使用DOM方法动态加载Javascript文件
2013/11/08 Javascript
window.open打开页面居中显示的示例代码
2013/12/27 Javascript
js清空表单数据的两种方式(遍历+reset)
2014/07/18 Javascript
微信分享的标题、缩略图、连接及描述设置方法
2014/10/14 Javascript
javascript判断变量是否有值的方法
2015/04/20 Javascript
jQuery实现限制textarea文本框输入字符数量的方法
2015/05/28 Javascript
JavaScript动态添加事件之事件委托
2016/07/12 Javascript
React根据宽度自适应高度的示例代码
2017/10/11 Javascript
vue中实现上传文件给后台实例详解
2019/08/22 Javascript
使用 JavaScript 创建并下载文件(模拟点击)
2019/10/25 Javascript
jQuery实现动态操作table行
2020/11/23 jQuery
jquery实现穿梭框功能
2021/01/19 jQuery
原生JavaScript实现进度条
2021/02/19 Javascript
[01:10]DOTA2次级职业联赛 - Fly战队宣传片
2014/12/01 DOTA
Python解决鸡兔同笼问题的方法
2014/12/20 Python
Python匹配中文的正则表达式
2016/05/11 Python
python http接口自动化脚本详解
2018/01/02 Python
Python实现企业微信机器人每天定时发消息实例
2020/02/25 Python
Python各种扩展名区别点整理
2020/02/27 Python
西班牙英格列斯百货官网:El Corte Inglés
2016/09/25 全球购物
经济实惠的名牌太阳镜和眼镜:Privé Revaux
2021/02/07 全球购物
2014年民政局关于保密工作整改措施
2014/09/19 职场文书
基层党员四风问题自我剖析材料
2014/09/29 职场文书
预防艾滋病宣传活动总结
2015/05/09 职场文书
Python生成九宫格图片的示例代码
2021/04/14 Python
在CSS中映射鼠标位置并实现通过鼠标移动控制页面元素效果(实例代码)
2021/04/22 HTML / CSS
html form表单基础入门案例讲解
2021/07/15 HTML / CSS
解析redis hash应用场景和常用命令
2021/08/04 Redis
spring cloud 配置中心客户端启动遇到的问题
2021/09/25 Java/Android
netty 实现tomcat的示例代码
2022/06/05 Servers