日期:2014-05-16  浏览次数:20347 次

javascript实现拷贝功能
IE内核的浏览器可以直接通过window.clipboardData.setData("Text", txt)实现将内容拷贝至剪贴板。但是其它浏览器由于安全性问题就比较难了。
网上查了很多,解决方法多是通过引入一个flash解决,这里介绍一个:Zero Clipboard.
DEMO页面 :http://bowser.macminicolo.net/~jhuckaby/zeroclipboard/
Zero Clipboard项目主页: [url]http://code.google.com/p/zeroclipboard/ [/url]

下面是我的使用例子:
<html>
<body>
<a id="copyInviteLink" href="javascript:;">邀请朋友一起玩</a> -- 你每邀请一个朋友我们都会送你一拍点哦!手动拷贝邀请链接: <b>www.yoursite.com/?ic=${inviteCode }</b>
</body>
</html>

JS:
<script type="text/javascript" src="http://skin.yoursite.com/script/plugins/ZeroClipboard.js"></script>
<script type="text/javascript">
	var clip = null;
	$(function(){  
		clip = new ZeroClipboard.Client();
		clip.setHandCursor( true );
		clip.addEventListener('load', function (client) {
		});
		clip.addEventListener('mouseOver', function (client) {
			clip.setText($("#copyInviteLink").siblings().html());
		});
		clip.addEventListener('complete', function (client, text) {
		 	alert("邀请链接已拷贝至剪贴板,赶紧去分享给好朋友吧^O^!");
		});
		clip.glue('copyInviteLink');
	});
</script>

附件是所需要引入的一个JS和一个SWF文件。