兼容所有浏览器的点击复制文本内容效果
分类:实例代码
点击一个按钮复制指定元素中的内容貌似在很久以前很容易实现。但是现在好像麻烦了许多,这是因为在很久以前,IE浏览器占绝大多数,甚至都可以不用考虑其他浏览器,所以使用IE自带的功能就可以实现,但是随着时间的推移,各种浏览器的出席那,IE那独有的方式已经不再适合,下面就分享一个能够兼容所有浏览器的方式。
代码实例如下:
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta name="author" content="http://www.pipipi.net/" /> <title>前端教程网</title> <script src="http://libs.baidu.com/jquery/1.10.2/jquery.min.js"></script> <script type="text/javascript" src="js/jquery.zclip.min.js"></script> <script> $(function(){ $('#copy_input').zclip({ path: 'js/ZeroClipboard.swf', copy: function(){//复制内容 return $('#mytext').val(); }, afterCopy: function(){//复制成功 $("<span id='msg'/>").insertAfter($('#copy_input')).text('复制成功'); } }); }); </script> </head> <body> <textarea id="mytext">请输入内容</textarea><br/> <a href="#" id="copy_input" class="copy">复制内容</a> </body> </html>
上面的代码实现了点击元素复制指定元素内容效果,下面介绍一下注意点。
特别说明:
(1).首先要引入jquery和jquery.zclip插件。
(2).要在服务器环境下测试,否则没有效果。
(3).如果是复制的内容来自输入框input、textarea等表单元素,copy对象使用如下代码:
copy: function(){ return $('#mytext').val(); }
如果是div、span或者p等元素,就需要使用如下方法:
copy: function(){ return $('#mytext').text(); }
参数说明:
(1).path:swf调用路径,必须,如js/ZeroClipboard.swf。
(2).copy:复制的内容,必须,任意字符串,也可以是回调函数返回的内容。
(3).beforeCopy:复制内容前回调函数,可选。
(4).afterCopy:复制内容后回调函数,可选。
完整代码下载:复制黏贴.rar
网站出售中,有意者加微信:javadudu