0

我编写了一个简单的脚本,使用 zClip 库http://www.steamdev.com/zclip/将文本复制到剪贴板。

<ul>
 <!-- Iterates trough a list of items -->
  <li>

    <script type="text/javascript">
        $(document).ready(function($){
            $('#cpbtn${id}').zclip({
                path:'resources/zclip/ZeroClipboard.swf',
                copy:function(){return $('#cptext${id}').val();}
            });
        });
    </script>

    <input type="hidden" value="userfiles/images/${imageName}" id="cptext${id}"/>
    <a class="btn btn-primary cpbtn" id="cpbtn${id}">Copy URL</a>

  </li>
 <!-- End of iterator -->
</ul>

但它在标签之间不起作用<ul><li></li></ul>,如果我删除<ul><li></li></ul>,它就起作用了。我把它放在标签之间,因为它遍历一个项目列表,我试图把 zClip 方法放在外面,<ul><li></li></ul>但我不知道如何触发.zclip();方法。怎么了?我哪里搞砸了?

4

2 回答 2

1

尝试这个:

$('ul li').find('a').each(function() {
    // cache jquery var
    var current = $(this);

    current.zclip({
        path: 'resources/zclip/ZeroClipboard.swf',
        copy: function() {
            return current.prev().val();
        }
    });
});​

把这个 zClip 方法去掉,<ul><li></li></ul>只调用一次。

于 2012-12-19T10:32:31.277 回答
0

zClip 生成元素的位置存在问题。

我已经放<a class="btn btn-primary cpbtn" id="cpbtn${id}">Copy URL</a>了一个<div style="position: relative;"></div>,它现在可以工作了。

于 2012-12-19T11:31:58.297 回答