<script type="text/javascript" src="js/jquery.min.js"></script>
<script type="text/javascript" src="js/jquery.zclip.js"></script>
<script type="text/javascript"><!--
$(document).ready(function(){
$('a#copy1').zclip({
path:'js/ZeroClipboard.swf',
copy:$('p#becopied1').text()
});
});
//-->
</script>
<a id="copy1">点击复制</a>
<p id="becopied1">被复制内容1</p>
以上用zClip (ZeroClipboard),jquery+ZeroClipboard+swf的一个点击复制,兼容各浏览器的。
现在问题是我想实现N个点击复制,
<a id="copy2">点击复制</a>
<p id="becopied2">被复制内容2</p>
<a id="copy3">点击复制</a>
<p id="becopied3">被复制内容3</p>
……
n个点击复制事件,需要怎么写呢?我用自定义函数做出来要点击两下才能复制成功。
特此求助!
jQuery
zClip
ZeroClipboard
------解决方案--------------------
$(document).ready(function(){
var copyButton = 'copy';
var textInput = 'becopied';
$('.copy').each(function(){//给每个a标签加上copy样式
var thisId = this.id.replace(copyButton,'');
$(this).zclip({
path:'js/ZeroClipboard.swf',
copy:$('p#becopied'+thisId).text()
})
})
});
感觉copy参数是可以配成函数的,但是不知道到底可不可以,就用这个笨方法吧。。
------解决方案--------------------
是可以。。
<script>
$(function () {
$('a[rel]').zclip({ copy: function () { return $(this.getAttribute('rel')).html(); } });
});
</script>
<body>
<a rel="#p1">拷贝1</a>
<p id="p1">拷贝内容1拷贝内容1拷贝内容1</p>
<a rel="#p2">拷贝2</a>
<p id="p2">拷贝内容2<br />拷贝内容2</p>
<a rel="#p3">拷贝3</a>
<p id="p3">拷贝内容3<br />拷贝内容3</p>