不依赖Flash和任何JS库实现文本复制与剪切附源码下载


Posted in Javascript onOctober 09, 2015

效果图如下:

不依赖Flash和任何JS库实现文本复制与剪切附源码下载

我们在网页上放置一个复制按钮,主要用来方便用户复制链接之类的复杂文本,以往的做法是,通过JS依靠Flash,甚至借助jQuery庞大的js库来实现文本复制到剪贴板的。今天我要给大家介绍的是一款极现代的,不需要flash,不依赖任何其他js库的非常小的插件,它叫clipboard.js。

查看演示 下载源码

HTML

首先加载本地clipboard.js文件。

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

然后就是在body中加上要复制或剪切的文本域内容以及按钮。

<input id="foo" value="https://3water.com/demo/clipboard/"> 

<button class="btn" data-clipboard-target="#foo" aria-label="复制成功!">复制</button>

这里,我们使用了HTML5的data-属性,用来定位复制对象目标,它指向了文本域#foo,说明复制的是#foo中的value内容,aria-label属性定义了复制成功后的信息,用来提示复制结果信息。

还有个属性data-clipboard-action,它定义当前操作是复制还是剪切,默认是复制,当data-clipboard-action="cut",这时,点击按钮将会剪切文本,跟WORD操作一样。当然,剪切操作仅适用于text和textarea。

我们也可以不需要input和textarea等元素内容作为复制对象,我们可以将要复制的内容通过ata-clipboard-text属性定义在按钮上,点击按钮就可以复制到ata-clipboard-text对应的内容。

<button class="btn" data-clipboard-text="这里是要复制的内容" aria-label="复制成功!">复制</button>

Javascript

将以下一句代码加入到</body>前的<script>里,保存打开浏览,点击按钮即可复制。

new Clipboard('.btn');

当然我们可以再进一步处理,比如当复制完成后,提示复制成功信息更友好些,只要执行以下代码即可:

var clipboard = new Clipboard('.btn'); 
clipboard.on('success', function(e) { 
 var msg = e.trigger.getAttribute('aria-label'); 
 alert(msg); 
 e.clearSelection(); 
});

以上内容就是小编跟大家分享的不依赖Flash和任何JS库实现文本复制与剪切附源码下载,希望大家喜欢。

Javascript 相关文章推荐
Convert Seconds To Hours
Jun 16 Javascript
浅谈javascript的分号的使用
May 12 Javascript
js实现倒计时及时间对象
Nov 15 Javascript
详解Js模板引擎(TrimPath)
Nov 22 Javascript
借助node实战JSONP跨域实例
Mar 30 Javascript
使用InstantClick.js让页面提前加载200ms
Sep 12 Javascript
基于原生js运动方式关键点的总结(推荐)
Oct 01 Javascript
基于wordpress的ajax写法详解
Jan 02 Javascript
微信小程序url传参写变量的方法
Aug 09 Javascript
JavaScript刷新页面的几种方法总结
Mar 28 Javascript
微信小程序 腾讯地图SDK 获取当前地址实现解析
Aug 12 Javascript
layui-table获得当前行的上/下一行数据的例子
Sep 24 Javascript
jQuery+PHP实现可编辑表格字段内容并实时保存
Oct 09 #Javascript
jQuery往返城市和日期查询实例讲解
Oct 09 #Javascript
JS实现黑色风格的网页TAB选项卡效果代码
Oct 09 #Javascript
jQuery实现连续动画效果实例分析
Oct 09 #Javascript
jQuery控制DIV层实现由大到小,由远及近动画变化效果
Oct 09 #Javascript
jQuery拖动布局其结果保存到数据库
Oct 09 #Javascript
JS实现可展开折叠层的鼠标拖曳效果
Oct 09 #Javascript
You might like
CodeIgniter中使用cookie的三种方式详解
2014/07/18 PHP
PHP根据两点间的经纬度计算距离
2014/10/31 PHP
JS 对象介绍
2010/01/20 Javascript
Jquery 改变radio/checkbox选中状态,获取选中的值(示例代码)
2013/12/12 Javascript
JQuery中操作Css样式的方法
2014/02/12 Javascript
javascript中解析四则运算表达式的算法和示例
2014/08/11 Javascript
Jquery仿IGoogle实现可拖动窗口示例代码
2014/08/22 Javascript
检测一个函数是否是JavaScript原生函数的小技巧
2015/03/13 Javascript
Flash图片上传组件 swfupload使用指南
2015/03/14 Javascript
javascript动态添加checkbox复选框的方法
2015/12/23 Javascript
Fullpage.js固定导航栏-实现定位导航栏
2016/03/17 Javascript
对js eval()函数的一些见解
2016/08/15 Javascript
JS产生随机数的用法小结
2016/12/10 Javascript
JS对象创建的几种方式整理
2017/02/28 Javascript
Vue自定义指令使用方法详解
2017/08/21 Javascript
基于React+Redux的SSR实现方法
2018/07/03 Javascript
详解vue服务端渲染浏览器端缓存(keep-alive)
2018/10/12 Javascript
如何检查一个对象是否为空
2019/04/11 Javascript
微信小程序与公众号卡券/会员打通的问题
2019/07/25 Javascript
python3编写C/S网络程序实例教程
2014/08/25 Python
Python基于Tkinter实现的记事本实例
2015/06/17 Python
Python 2.7中文显示与处理方法
2018/07/16 Python
python实现局域网内实时通信代码
2019/12/22 Python
python网络编程socket实现服务端、客户端操作详解
2020/03/24 Python
如何将tensorflow训练好的模型移植到Android (MNIST手写数字识别)
2020/04/22 Python
Python数据可视化常用4大绘图库原理详解
2020/10/23 Python
HTML5的download属性详细介绍和使用实例
2014/04/23 HTML / CSS
英国电气世界:Electrical World
2019/09/08 全球购物
自我评价正确写法范文
2013/12/10 职场文书
2014年元旦联欢会活动策划方案
2014/02/16 职场文书
挂职自我鉴定
2014/02/26 职场文书
群众路线教育实践活动批评与自我批评
2014/09/15 职场文书
见习报告的格式
2014/10/31 职场文书
说谎欺骗人检讨书300字
2014/11/18 职场文书
环保证明
2015/06/23 职场文书
python lambda 表达式形式分析
2022/04/03 Python