<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个点击复制事件,需要怎么写呢?我用自定义函数做出来要点击两下才能复制成功。
特此求助!jQueryzClipZeroClipboard

解决方案 »

  1.   

    $(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参数是可以配成函数的,但是不知道到底可不可以,就用这个笨方法吧。。
      

  2.   


    是可以。。<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>
      

  3.   

    showbo 版主的不行啊。跑不起。。
      

  4.   

    测试可以的。。你直接拷贝我的代码啊?我的path路径没修改的,默认和文件在同一个目录增加红色部分
     $(function () {
            $('a[rel]').zclip({ path:'js/ZeroClipboard.swf', copy: function () { return $(this.getAttribute('rel')).html(); } });
        });
      

  5.   

    没注意看,直接复制的,现在能跑了。
    谢谢版主,谢谢functionsub!又学到一点了。等下散分给大家啊。