4

zclip を live にバインドしようとしています:

$('.code').live('click', function () {
    $(this).zclip({
        path: '<%= asset_path "ZeroClipboard.swf" %>',
        copy: $(this).text()
    });

    ...
});

そのようには機能しないようです。手がかりはありますか?

一部のDOM要素がajaxで追加されているため、ライブで行う必要があります。

4

2 に答える 2

1

次のように、ajax メソッドのコールバック関数に zclip-binding を入れることができます。

$.post('ajax',
   {data:"data"}, 
       function(data){
      //add dom elements
      ....
          //bind zclip
          $('.code').each(function(){
    $(this).zclip({
      path:".ZeroClipboard.swf",
      copy:$(this).txt()
        });
      });
   }, 'json');

each() は、 $('.code') が 2 つ以上の要素を持つことを避けるためです。

于 2013-09-03T08:05:21.953 に答える