zeroclipboard 单个复制按钮和多个复制按钮的实现方法


Posted in Javascript onJune 14, 2014

zeroclipboard是一个跨浏览器的库类 它利用 Flash 进行复制,所以只要浏览器装有 Flash 就可以运行,而且比 IE 的 document.execCommand("Copy") 更加灵活。

zeroclipboard下载地址:https://3water.com/jiaoben/24961.html

zeroclipboard实现多浏览器复制到粘贴板功能(单个复制按钮和多个复制按钮) 为了更好的用户体验,现在很多网站中文本框的内容只需要点击复制按钮这样就能把内容复制到粘贴板了;

出于兼容性的考虑,基本上都是通过zeroclipboard来实现.首先要下载zeroclipboard,解压后把ZeroClipboard.js和ZeroClipboard.swf、ZeroClipboard10.swf(“为了flash10”)放到项目中,可以通过ZeroClipboard.setMoviePath( '/ZeroClipboard.swf' )方法来加载swf;
下面是整理的代码(也是通过 网上查找整理的)

(单个复制按钮):

html:

<input type="text" value="text" id="copy_txt"/><a href="javascirpt:;" id="copy_btn">复制</a>
<script language="JavaScript">
    ZeroClipboard.setMoviePath( 'ZeroClipboard.swf' );  //和html不在同一目录需设置setMoviePath
    ZeroClipboard.setMoviePath( 'ZeroClipboard10.swf' );
    var clip = new ZeroClipboard.Client();   //创建新的Zero Clipboard对象
    clip.setText( '' ); // will be set later on mouseDown   //清空剪贴板
    clip.setHandCursor( true );      //设置鼠标移到复制框时的形状
    clip.setCSSEffects( true );          //启用css
    clip.addEventListener( 'complete', function(client, text) {     //复制完成后的监听事件
          alert("aa")      
          clip.hide();                                          // 复制一次后,hide()使复制按钮失效,防止重复计算使用次数
     } );
   clip.addEventListener( 'mouseDown', function(client) {
          clip.setText( document.getElementById('copy_txt').value );
    } );
    clip.glue( 'copy_btn' );
</script>

多个复制按钮:

<input type="text" value="text" id="copy_txt0"/><a href="javascirpt:;" id="copy_btn0" data='0' class="copyBtn">复制</a>
<input type="text" value="text" id="copy_txt1"/><a href="javascirpt:;" id="copy_btn1" data='1' class="copyBtn">复制</a>
<input type="text" value="text" id="copy_txt2"/><a href="javascirpt:;" id="copy_btn2" data='2' class="copyBtn">复制</a>
<script language="JavaScript">
$(".copyBtn").each(function(i){
        var id = $(this).attr('data');
        var clip=null;
        clip = new ZeroClipboard.Client();
        ZeroClipboard.setMoviePath( 'ZeroClipboard.swf' );  //和html不在同一目录需设置setMoviePath
        ZeroClipboard.setMoviePath( 'ZeroClipboard10.swf' );
        clip.setHandCursor( true );
        clip.setText( $("#copy_txt"+id).val() );
        clip.addEventListener('complete', function (client, text) {
          alert( "恭喜复制成功" );
        });
        clip.glue( 'copy_btn'+id);
  });
</script>

注意: clip.setText( $("#copy_txt"+id).val() );如果是获取div中的内容, 一般用clip.setText( $("#copy_txt"+id).text() );或clip.setText( $("#copy_txt"+id).html() );

Javascript 相关文章推荐
网页图片延时加载的js代码
Apr 22 Javascript
javascript中创建对象的三种常用方法
Dec 30 Javascript
Javascript中call的两种用法实例
Dec 13 Javascript
javascript读写json示例
Apr 11 Javascript
JavaScript怎么判断图片是否加载完成以便获取其尺寸
May 08 Javascript
JS运动框架之分享侧边栏动画实例
Mar 03 Javascript
React.js入门实例教程之创建hello world 的5种方式
May 11 Javascript
简单理解vue中el、template、replace元素
Oct 27 Javascript
网站发布后Bootstrap框架引用woff字体无法正常显示的解决方法
Nov 24 Javascript
多种方式实现js图片预览
Dec 12 Javascript
原生JS实现《别踩白块》游戏(兼容IE)
Feb 20 Javascript
JS中Map和ForEach的区别
Feb 05 Javascript
Ext修改GridPanel数据和字体颜色、css属性等
Jun 13 #Javascript
jquery实现倒计时代码分享
Jun 13 #Javascript
JS判断移动端访问设备并加载对应CSS样式
Jun 13 #Javascript
改变状态栏文字的js代码
Jun 13 #Javascript
js数组中如何随机取出一个值
Jun 13 #Javascript
可编辑下拉框的2种实现方式
Jun 13 #Javascript
JSP中使用JavaScript动态插入删除输入框实现代码
Jun 13 #Javascript
You might like
咖啡知识大全
2021/03/03 新手入门
php 定义404页面的实现代码
2012/11/19 PHP
解析php中用PHPMailer来发送邮件的示例(126.com的例子)
2013/06/24 PHP
PHP 二维数组根据某个字段排序的具体实现
2014/06/03 PHP
PHP读取RSS(Feed)简单实例
2014/06/12 PHP
ThinkPHP框架安全实现分析
2016/03/14 PHP
showModelessDialog()使用详解
2006/09/07 Javascript
javascript getElementsByName()的用法说明
2009/07/31 Javascript
上传的js验证(图片/文件的扩展名)
2013/04/25 Javascript
jquery $.each() 使用小探
2013/08/23 Javascript
探讨JavaScript中声明全局变量三种方式的异同
2013/12/03 Javascript
Javascript基础教程之数据类型 (布尔型 Boolean)
2015/01/18 Javascript
node.js 使用ejs模板引擎时后缀换成.html
2015/04/22 Javascript
vue购物车插件编写代码
2017/11/27 Javascript
.vue文件 加scoped 样式不起作用的解决方法
2018/05/28 Javascript
vue.js使用watch监听路由变化的方法
2018/07/08 Javascript
详解js删除数组中的指定元素
2018/10/31 Javascript
前端Electron新手入门教程详解
2019/06/21 Javascript
详解在vue-cli3.0中自定css、js和图片的打包路径
2019/08/26 Javascript
jQuery实现验证用户登录
2019/12/10 jQuery
vue开发简单上传图片功能
2020/06/30 Javascript
JS数组转字符串实现方法解析
2020/09/04 Javascript
[28:42]Ti4正赛VG vs NEWBEE1
2014/07/19 DOTA
一篇文章读懂Python赋值与拷贝
2018/04/19 Python
如何基于python实现不邻接植花
2020/05/01 Python
python使用建议与技巧分享(二)
2020/08/17 Python
基于HTML5 的人脸识别活体认证的实现方法
2016/06/22 HTML / CSS
物流仓储计划书
2014/01/10 职场文书
如何编写优秀的食品项目创业计划书
2014/01/23 职场文书
优秀党员获奖感言
2014/02/18 职场文书
绿化工程实施方案
2014/03/17 职场文书
个人自我鉴定总结
2014/03/25 职场文书
说明书范文
2014/05/07 职场文书
2016年党员干部公开承诺书
2016/03/24 职场文书
创业计划书之家教中心
2019/09/25 职场文书
SQL Server使用导出向导功能
2022/04/08 SQL Server