声明:本文是经过多方搜索、整理而成。转载至http://my.oschina.net/ichendong/blog/316493
最近工作很烦心,为了让自己冷静下来,开始把平时碰到的问题、知识点以博客的形式记录下来,分享给一线的战友们!
不是你不能,而是你对自己的要求太低
-------------------------------------------------------不罗嗦了,进入正题,完美分割-------------------------------------------------------------
jQuery-zclip是一个复制内容到剪贴板的jQuery插件,使用它我们不用考虑不同浏览器和浏览器版本之间的兼容问题。jQuery-zclip插件需要Flash的支持,使用时记得电脑安装Adobe Flash Player。
加载jQuery和zClip,地址请根据各自的存放地址做相应修改。
<script type="text/javascript" src="js/jquery.js"></script> <script type="text/javascript" src="js/jquery.zclip.min.js"></script>
js实现点击复制的代码(本地测试无法使用,上传到服务器测试)
$(function(){ $('#copy_input').zclip({ path: 'js/ZeroClipboard.swf', copy: function(){ //复制内容 return $('#mytext').val(); }, afterCopy: function(){ //复制成功 $("<span id='msg'/>").insertAfter($('#copy_input')).text('复制成功'); } }); });
需要注意如果是复制的内容来自输入框input、textarea等,copy对象使用:
copy: function(){ return $('#mytext').val(); }
如果是复制的内容来自页面元素div、p之类的,copy对象使用:
copy: $('#mytext').text();
配置说明
path:swf的路径(复制主要是用flash解决不同浏览器的复制) copy:待复制的内容, 可以是静态内容, 也可以 return 动态内容 beforeCopy:复制之前要做的function; afterCopy:复制之后要做的function;
提供了3个方法
show:$(selected).zclip('show'); //复制功能有效 hide:$(selected).zclip('hide'); //复制功能无效 remove:$(selected).zclip('remove'); //完全移除复制功能
第二种:转载 http://www.daimajiayuan.com/sitejs-17973-1.html
网上一搜一大堆,单纯使用js方法也不是没有,但是由于各浏览器的安全机制不同,不是跨浏览器的。去看了几个常用的网站,都是用的透明flash遮挡“复制到剪贴板”按钮,所以当你点击“复制到剪贴板”的时候,点击的其实是flash,然后把你需要复制的内容传入到了flash,然后在通过flash的复制功能把传入的内容复制到了剪贴板。
加载JQuery库和zclip插件
下面是一个小demo,主要是复制文本框中的链接到剪贴板。
HTML
然后加入脚本
以上都须要在服务环境才能测试。不懂怎么回事!知道的朋友可以解答一下,谢谢!