0

这是我的代码。

$('a.copy').each(function(){
    var $this = $(this);
    $this.zclip({
        path : 'path/to/ZeroClipboard.swf',
        copy : function(){
            var copyText = $this.prev().val();
            console.debug(copyText);
            return copyText;
       }
    });
 });

单击按钮后,“ copyText”被正确打印出来(通过console.debug),但该值似乎没有返回。

问题似乎是“ iButton ”插件,当我评论该插件时,zclip 工作,但我不知道为什么。有人遇到过这个问题吗?

PS Firefox 工作正常

4

2 回答 2

1

这让我困惑了几个小时,我有一个同时使用 iButton 和 ZeroClipboard 的项目,并且遇到了同样的问题。

问题在于 iButton 将 mouseup 事件附加到 $('document') 会干扰其他 mouseup 事件。我没有时间寻找 iButton 组件的完整修复程序,而是在 jquery.ibutton.js Rev: 1.0.03 中搜索以下行

$('document').bind("mouseup.iButton_" + id + " touchend.iButton_" + id, function(e) {

并将其替换为

$container.bind("mouseup.iButton_" + id + " touchend.iButton_" + id, function(e) {

为我解决了问题,但可能有更好的解决方法。

于 2012-12-06T11:09:07.440 回答
0
 $(document).ready(function(){    
 $('a.copy').each(function(){
   $this.zclip({
    path : 'path/to/ZeroClipboard.swf',
    copy : function(){
    var copyText=$(this).prev().val();
    console.debug(copyText);
    return copyText ;   
   }
    });
   });
 });

首先确保包含 jquery 库和 zclip js 文件

于 2012-09-03T13:24:33.273 回答