Zero Clipboard 利用透明的Flash让其漂浮在复制按钮之上,这样其实点击的不是按钮而是 Flash ,这样将需要的内容传入Flash,再通过Flash的复制功能把传入的内容复制到剪贴板。
用这个插件(ZeroClipboard )。不过那个版本比较低,而且扩展不方便。
比如这次。我需要在一个隐藏的界面里面生成这个复制按钮。点击后复制。就无法实现,一定要在界面显示的情况下才会自动生成按钮。
Zero Clipboard的安装方法
首先需要下载 Zero Clipboard的压缩包,解压后把文件夹中两个文件:ZeroClipboard.js 和 ZeroClipboard.swf 放入到你的项目中。
然后把在你要使用复制功能的页面中引入Zero Clipboard的js文件:ZeroClipboard.js
现在只需要加上:
代码如下 | 复制代码 |
$('#fuzhi').zclip({ |
即可轻松实现。而且自定义感非常强。推荐使用。
隐藏界面下也可以使用方法:
用 setTimeout(‘fsfdsd()’,500);方法延时调用,不过按一次就会生成一次。所以自己做好处理。
代码如下 | 复制代码 |
function fsfdsd(){ |
注意:以上 ZeroClipboard.js, ZeroClipboard.swf需要放在同一路径下。如果不在同一路径,可使用ZeroClipboard.setMoviePath( “Flash路径” );来设置ZeroClipboard.swf 地址
Zero Clipboard实现简单跨浏览器复制
var clip = new ZeroClipboard.Client(); // 新建一个对象
clip.setHandCursor( true ); // 设置鼠标为手型
clip.setText(“哈哈”); // 设置要复制的文本。
// 注册一个 button,参数为 id。点击这个 button 就会复制。
//这个 button 不一定要求是一个 input 按钮,也可以是其他 DOM 元素。
clip.glue(“copy-botton”); // 和上一句位置不可调换
这样,这样基本功能实现了,点击按钮就可以复制设置好的文本了。