首先导入ZeroClipboard.js和ZeroClipboard.swf两个文件,这里用到了JQuery选择元素,所以还要导入jquery.js文件。
我将复制分为两种:静态复制和动态复制。
静态复制为固定的复制内容,复制的内容直接在JS中定义。
首先定义一个button按钮(也可设置其他DOM)
<button id="clip_button" >复制到剪贴板</button>
<script>
(function(){
var clip=new ZeroClipboard($("#clip_button"),{
moviePath:"js/ZeroClipboard.swf" // 设置ZeroClipboard.swf路径
});
clip.on('load',function(client){
debugstr("Flash 文件已经载入");
});
clip.on('mousedown',function(client){
client.setText( "Hello World" ); //设置复制内容
});
clip.on('noFlash',function(client,args){
$(".demo-area").hide();
debugstr("您的浏览器没有使用 Flash");
});
clip.on('wrongFlash',function(client,args){
$(".demo-area").hide();
debugstr("Flash 版本需要 10.0.0+,当前 Flash 版本为 " + args.flashVersion.replace(/,/g,"."));
});
clip.on('complete',function(client,args){
debugstr("已复制到剪贴板内容为:" + args.text);
});
})();
</script>
动态复制的内容可以为textfield等元素的值,根据输入的文本复制内容。
<button id="clip_button" data-clipboard-target="text" data-clipboard-text="我是默认的复制文本">复制到剪贴板</button>
<label for="text">输入你要复制的内容</label>
<input type="text" id="text" >
data-clipboard-target为元素的ID,data-clipboard-text为默认的复制内容
JS中只需设置swf路径即可(function(){
var clip=new ZeroClipboard($("#clip_button"),{
moviePath:"js/ZeroClipboard.swf"
});
clip.on('complete',function(client,args){
debugstr("已复制到剪贴板内容为:" + args.text);
});
})();