复制到剪切板的功能,在我们分享网址,邀请朋友的时候会用到,而针对IE浏览器我们有很好的办法,但随着用chrome浏览器的人越来越多,我们就需要写出兼容各大浏览器的代码,现在为大家介绍一个jquery的插件zclip,专门用来处理复制功能的,用法很简单。
html:
<script src="js/jquery.min.js" type="text/javascript" charset="utf-8"></script>
<script src="js/jquery.zclip.min.js" type="text/javascript" charset="utf-8"></script> <input type="text" value="www.111cn.net" id="link"> <span id="copyBtn">复制链接</span>
js:
$('#copyBtn').zclip({
path: "js/ZeroClipboard.swf",
copy: function(){
return $('#link').val();
}
});
再看个完整的例子
首先需要在页面中载入jquery库和zclip插件,这两个文件已经打好包,欢迎点击上面的download按钮下载。
<script type="text/javascript" src="js/jquery.js"></script>
<script type="text/javascript" src="js/jquery.zclip.min.js"></script>
接着我们在页面中的body部分加入如下代码:
<textarea id="mytext">请输入内容</textarea><br/>
<a href="#" id="copy_input" class="copy">复制内容</a>
页面中放置了一个输入框textarea,当然也可以是其他html元素,然后就是一个复制按钮,也可以是链接文本形式。
Javascript
当点击“复制内容”时,调用zclip插件,并提示复制成功,请看代码:
$(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调用路径,必须,如js/ZeroClipboard.swf,ZeroClipboard.swf文件已存在下载包中。
copy:复制的内容,必须,任意字符串,也可以是回调函数返回的内容
beforeCopy:复制内容前回调函数,可选
afterCopy:复制内容后回调函数,可选
您也可以到zclip官网了解更多信息:http://steamdev.com/zclip/