无法将zclip对象应用于在onLoad()之后创建的元素ID?

时间:2012-05-09 22:29:05

标签: jquery zeroclipboard zclip

所以我想让zclip与我的网站一起工作。基本上,在页面加载后,我只是一个“.get()”函数来创建我的列表。对于每个表行,我有一个带有按钮的表数据,我希望它从另一个表数据中复制数据。问题是,我读到zclip只能应用于在“onLoad”中创建的代码。我需要能够在pageLoad之后开始工作。我的清单是动态的,所以事情会改变加载我的桌子需要时间,所以我这样做了。

以下是我的代码的工作方式

$(document).ready(function() 
   // get this after everything loads //
   $.get(url, function(data) {
       $('#list-information').html(data); // data is an html string echoed by php ajax call
       // this button is created in the above call the above is called
        $('a#test-button').zclip({
          path:'http://mytest.com/files/ZeroClipboard.swf',
          copy: function() {return 'hellomee'}
        });
   });

});

'测试按钮'永远不会与swf“粘在一起”。但是当我在.get之外执行此操作时,如果我将按钮放在实际的html页面上,可以在初始加载时创建,而不是在“.get()”中,它可以正常工作。任何帮助都会非常感谢你

1 个答案:

答案 0 :(得分:0)

我知道我可能会有点迟到,但这应该可以解决你的问题:

$(document).ready(function() {
    $('a#test-button').zclip({
       path:'http://mytest.com/files/ZeroClipboard.swf',
       copy: function() {return 'hellomee'}
    }).zclip('hide').addClass('disabled'); //in your css, add a.disabled { color: #eee; }
    $.get(url, function(data) {
       $('#list-information').html(data);
       $('a#test-button').removeClass('disabled').zclip('show');
    });
});

如您所见,这会在页面加载时实例化zclip,然后禁用它,然后仅在$ .get收到必要数据后重新启用它。