clipboard.js无需Flash无需依赖任何JS库实现文本复制与剪切

 更新时间:2015年10月10日 09:15:21   投稿:lijiao  
这篇文章主要实现了无需Flash无需依赖任何JS库实现文本复制与剪切,是一款极现代的,不需要flash,不依赖任何其他js库的非常小的插件,叫clipboard.js,感兴趣的小伙伴们可以参考一下

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

运行效果图:

 

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

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

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

<input id="foo" value="https://www.jb51.net/article/73145.htm"> 
<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 数组使用方法汇总

    javascript 数组使用方法汇总

    由于javascript是一种无类型语言,所以一个数组的元素可以具有任意的数据类型,同一个数组的不同元素 可以具有不同的类型,数组的元素设置可以包含其他数组,这样就可以创建一个复杂的数组了.
    2009-12-12
  • javascript实现在网页中运行本地程序的方法

    javascript实现在网页中运行本地程序的方法

    这篇文章主要介绍了javascript实现在网页中运行本地程序的方法,实例分析了JavaScript基于ActiveXObject运行本地程序的技巧,需要的朋友可以参考下
    2016-02-02
  • JavaScript 经典效果集

    JavaScript 经典效果集

    JavaScript 经典效果集...
    2007-01-01
  • JS在一定时间内跳转页面及各种刷新页面的实现方法

    JS在一定时间内跳转页面及各种刷新页面的实现方法

    这篇文章主要介绍了JS在一定时间内跳转页面及各种刷新页面的实现方法的相关资料,非常不错,具有参考借鉴价值,需要的朋友可以参考下
    2016-05-05
  • 浅析Promise的介绍及基本用法

    浅析Promise的介绍及基本用法

    Promise是异步编程的一种解决方案,在ES6中Promise被列为了正式规范,统一了用法,原生提供了Promise对象。接下来通过本文给大家介绍Promise的介绍及基本用法,感兴趣的朋友一起看看吧
    2021-10-10
  • 完美实现js拖拽效果 return false用法详解

    完美实现js拖拽效果 return false用法详解

    这篇文章主要为大家详细介绍了完美实现js拖拽效果的代码,一起学习return false的用法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-07-07
  • 举例讲解JavaScript substring()的使用方法

    举例讲解JavaScript substring()的使用方法

    这篇文章主要通过举例的方法讲解了javaScript substring()的用法,substring() 方法用于提取字符串中介于两个指定下标之间的字符,感兴趣的小伙伴们可以参考一下
    2015-11-11
  • javascript文本模板用法实例

    javascript文本模板用法实例

    这篇文章主要介绍了javascript文本模板用法,实例分析了文本模板的相关实现技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-07-07
  • 浅析JavaScript中var that=this

    浅析JavaScript中var that=this

    this是Javascript语言的一个关键字。它代表函数运行时,自动生成的一个内部对象,只能在函数内部使用。接下来通过本文给大家分享JavaScript中var that=this所代表的意思,需要的朋友参考下吧
    2017-02-02
  • innerHTML,outerHTML,innerText,outerText的用法及区别解析

    innerHTML,outerHTML,innerText,outerText的用法及区别解析

    本篇主要是对innerHTML,outerHTML,innerText,outerText的用法及区别进行了详细的介绍,需要的朋友可以过来参考下,希望对大家有所帮助
    2013-12-12

最新评论