js/jQuery实现复制到剪贴板功能,兼容所有浏览器

时间:2022-11-24 19:36:17

因为工作的原因,需要实现这样一个功能:点击按钮,复制文本内容.

百度了一下,大都语焉不详,最终找到了一篇很好的博文,有讲解,有实例,捣鼓了一会,最终实现了功能.

网址在这里http://www.cnblogs.com/PeunZhang/p/3324727.html

在这里,个人做一下总结.

第一步,下载插件.

  附件内容:jquery.js

      jquery.zclip.js

      ZeroClipboard.swf

  下载附件戳这里

第二步,编写实例 copy.html .

  注意1:引入jquery.js和jquery.zclip.js

<script type="text/javascript" src="../jquery.js"></script>
<script type="text/javascript" src="../jquery.zclip.js"></script>

  注意2:在本例中,ZeroClipboard.swf必须与copy.html (修改为jquery.zclip.js)处在同级目录下.

  注意3:在服务器环境下打开copy.html,如"localhost/test/copy.html".

  实例详情如下:

 1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
 2 <html>
 3 <head>
 4 <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
 5 <title>jquery-zclip</title>
 6 <style type="text/css">
 7 /* 复制提示 */
 8 .copy-tips{position:fixed;z-index:999;bottom:50%;left:50%;margin:0 0 -20px -80px;background-color:rgba(0, 0, 0, 0.2);filter:progid:DXImageTransform.Microsoft.Gradient(startColorstr=#30000000, endColorstr=#30000000);padding:6px;}
 9 .copy-tips-wrap{padding:10px 20px;text-align:center;border:1px solid #F4D9A6;background-color:#FFFDEE;font-size:14px;}
10 </style>
11 </head>
12 <body>
13 <input id="copy_text" type="text" />
14 <input id="copy_button" type="button" value="点我复制" />
15 </body>
16 <script type="text/javascript" src="../jquery.js"></script>
17 <script type="text/javascript" src="../jquery.zclip.js"></script>
18 <script type="text/javascript">
19     $(document).ready(function(){
20         $("#copy_button").zclip({
21             path: "ZeroClipboard.swf",
22             copy: function(){
23             return $("#copy_text").val();
24             },
25             afterCopy:function(){/* 复制成功后的操作 */
26                 var $code=$("#copy_text").val();
27                 var fade_node="<div class='copy-tips'><div class='copy-tips-wrap'>"+'code: ' + $code + ' has been copied'+"</div></div>";
28                 var $copysuc = $(fade_node);
29                 $("body").find(".copy-tips").remove().end().append($copysuc);
30                 $(".copy-tips").fadeOut(2500);
31             }
32         });
33     });
34 </script>
35 </html>

实例下载