Clipboard.js 无需Flash的JavaScript复制粘贴库


Posted in Javascript onOctober 02, 2015

clipboard.js基本使用

clipboard.js 是一个不需要flash,将文本复制到剪贴板的插件。简单介绍下基本运用。

一、引入插件

<script src="js/clipboard.min.js"></script>

二、基本使用

首先需要您需要通过传递DOM选择器,HTML元素或HTML元素列表来实例化它。

new Clipboard('.btn');

用一个元素当触发器来复制另一个元素的文本,data-clipboard-target属性后需要跟属性选择器

<input id="foo" value="https://github.com/zenorocha/clipboard.js.git">
<button class="btn" data-clipboard-target="#foo">
</button>

另外还有另外一个属性data-clipboard-action属性,以指定是要要么copy还是要cut操作。默认情况下是copy。cut操作只适用于或元素。

<textarea id="bar">Mussum ipsum cacilds...</textarea>
<button class="btn" data-clipboard-action="cut" data-clipboard-target="#bar">
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>

三、其他说明
1、通过运行检查clipboard.js是否支持Clipboard.isSupported(),返回true则可以使用。
2、显示一些用户反馈或捕获在复制/剪切操作后选择的内容。操作,文本,触发元素

var clipboard = new Clipboard('.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);
});

该插件使用的是事件委托的方式来触发,所以大大减少了对dom的操作。

四、高级使用

如果你不想修改你的HTML,又或者要获取内容的标签是无法被选中【移动端经常遇到的问题】,那么你可以使用一个非常方便的命令API。所以你需要做的是声明一个函数,写下你想要的操作,并返回一个值。下面是一个对不同id的触发器返回不同的值的例子。具体的使用方法请看https://clipboardjs.com

五、移动端复制失败分析详解

移动端复制失败的原因基本都是要获取的内容无法被选中,如此才获取不到内容,用上面的函数基本可以解决,但亦可看看分析过程。

六、支持的浏览器

谷歌42+,火狐41+,其他自己查看官方

下面是实例

clipboard.js 实现了纯 JavaScript (无 Flash)的浏览器内容复制到系统剪贴板的功能。可以在浏览器和 Node 环境中使用。支持 Chrome 42+、Firefox 41+、IE 9+、Opera 29+

Clipboard.js 无需Flash的JavaScript复制粘贴库

官方网站:https://github.com/zenorocha/clipboard.js

软件下载://3water.com/jiaoben/385604.html

官方使用方法:https://zenorocha.github.io/clipboard.js/#example-text

示例代码:

官方实例一:
在线演示:http://demo.3water.com/js/2015/clipboard/

<script src="clipboard.min.js"></script>
 <textarea id="bar" cols="62" rows="5" autocomplete="off" autocorrect="off" autocapitalize="off" spellcheck="false">三水点靠木是国内专业的网站建设资源、脚本编程学习类网站,提供asp、php、asp.net、javascript、jquery、vbscript、dos批处理、网页制作、网络编程、网站建设等编程资料。</textarea>

<!-- Trigger -->
<button class="btn" data-clipboard-action="copy" data-clipboard-target="#bar">
 Cut to clipboard
</button>
<script>
var clipboard = new Clipboard('.btn');
clipboard.on('success', function(e) {
 console.info('Action:', e.action);
 console.info('Text:', e.text);
 console.info('Trigger:', e.trigger);
alert("复制成功");
 e.clearSelection();
});

clipboard.on('error', function(e) {
 console.error('Action:', e.action);
 console.error('Trigger:', e.trigger);
});
</script>

官方实例二:

<script src="dist/clipboard.min.js"></script>
<button class="btn">
<script type="text/javascript">
var clipboard = new Clipboard('.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);
});
</script>

到此这篇关于Clipboard.js 无需Flash的JavaScript复制粘贴库的文章就介绍到这了,更多相关JavaScript 内容复制 Clipboard内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Javascript 相关文章推荐
jQuery第三课 修改元素属性及内容的代码
Mar 14 Javascript
浅析jQuery对select操作小结(遍历option,操作option)
Jul 04 Javascript
js 判断文件类型并控制表单提交示例代码
Nov 14 Javascript
javascript中sort()的用法实例分析
Jan 30 Javascript
jQuery实现的自适应焦点图效果完整实例
Aug 24 Javascript
jquery获取select,option所有的value和text的实例
Mar 06 Javascript
在ABP框架中使用BootstrapTable组件的方法
Jul 31 Javascript
Node.JS 循环递归复制文件夹目录及其子文件夹下的所有文件
Sep 18 Javascript
vue.js实现点击后动态添加class及删除同级class的实现代码
Apr 04 Javascript
select2 ajax 设置默认值,初始值的方法
Aug 09 Javascript
用npm-run实现自动化任务的方法示例
Jan 14 Javascript
jQuery 实现DOM元素拖拽交换位置的实例代码
Jul 14 jQuery
jQuery网页右侧广告跟随滚动代码分享
Apr 20 #Javascript
jQuery+PHP星级评分实现方法
Oct 02 #Javascript
谈谈JSON对象和字符串之间的相互转换JSON.stringify(obj)和JSON.parse(string)
Oct 01 #Javascript
通过js获取上传的图片信息(临时保存路径,名称,大小)然后通过ajax传递给后端的方法
Oct 01 #Javascript
基于OL2实现百度地图ABCD marker的效果
Oct 01 #Javascript
JS处理json日期格式化问题
Oct 01 #Javascript
JS日期格式化之javascript Date format
Oct 01 #Javascript
You might like
如何使用php判断所处服务器操作系统的类型
2013/06/20 PHP
PHP使用json_encode函数时不转义中文的解决方法
2014/11/12 PHP
PHP编程基本语法快速入门手册
2016/01/07 PHP
在Laravel5.6中使用Swoole的协程数据库查询
2018/06/15 PHP
Centos7.7 64位利用本地完整安装包安装lnmp/lamp套件教程
2021/03/09 Servers
JS JavaScript获取Url参数,src属性参数
2021/03/09 Javascript
java script编程起步(第三课)
2007/01/10 Javascript
利用Javascript判断操作系统的类型实现不同操作系统下的兼容性
2013/01/29 Javascript
Dom 学习总结以及实例的使用介绍
2013/04/24 Javascript
jquery 实现上下滚动效果示例代码
2013/08/09 Javascript
原生JavaScript实现连连看游戏(附源码)
2013/11/05 Javascript
通过js来制作复选框的全选和不选效果
2014/05/22 Javascript
JSONP之我见
2015/03/24 Javascript
jQuery使用方法
2017/02/04 Javascript
JavaScript定时器制作弹窗小广告
2017/02/05 Javascript
vue+vux实现移动端文件上传样式
2017/07/28 Javascript
node.js中路由,中间件,ge请求和post请求的参数详解
2017/12/26 Javascript
仿vue-cli搭建属于自己的脚手架的方法步骤
2019/04/17 Javascript
[43:53]OG vs EG 2019国际邀请赛淘汰赛 胜者组 BO3 第三场 8.22
2019/09/05 DOTA
python回调函数的使用方法
2014/01/23 Python
Python获取服务器信息的最简单实现方法
2015/03/05 Python
Python使用turtule画五角星的方法
2015/07/09 Python
requests和lxml实现爬虫的方法
2017/06/11 Python
python爬取cnvd漏洞库信息的实例
2019/02/14 Python
Pyqt QImage 与 np array 转换方法
2019/06/27 Python
详解django中Template语言
2020/02/22 Python
Perricone MD裴礼康美国官网:抗衰老护肤品
2016/09/26 全球购物
DTD的含义以及作用
2014/01/26 面试题
即将毕业大学生自荐信
2014/01/24 职场文书
应聘护理专业毕业自荐书范文
2014/02/12 职场文书
团日活动总结书
2014/05/08 职场文书
高一新生军训方案
2014/05/12 职场文书
承诺书格式
2014/06/03 职场文书
语文教研活动总结
2014/07/02 职场文书
2014基建处领导班子“四风”对照检查材料思想汇报
2014/10/04 职场文书
2014年就业工作总结
2014/11/26 职场文书