2012-04-18 4 views
0

Я хочу, чтобы включить zClip для АЯКС загружены результаты (данные в формате JSON, превращенный в HTML сниппет) ... Но есть проблема, потому что zClip придает click событие само по себе ...JQuery zClip делегат нужно нажать дважды

$('ul.detail_list').delegate("a.clipboard", "click", function(e){ 
         e.preventDefault(); 
         $(this).zclip({ 
          path:'images/ZeroClipboard.swf', 
          copy:$(this).text(), 
          afterCopy:function(){ 
           window.open('....'); 
          }, 
          clickAfter: false 
         }); 

Мне нужно щелкнуть дважды, чтобы запустить Zclip. В противном случае этот код работает как следует (если я делаю alert или console.log вместо zClip, он запускается каждый раз) ...

Итак, как я могу подключить Zclip, чтобы предотвратить это?

ОБНОВЛЕНИЕ: Забыл упомянуть ul.detail_list - это фрагмент html, созданный после ответа json.

фрагмент кода HTML (динамически генерируется из ответа JSon):

<ul class="detail_list"> 
    <li><a href="#" class="clipboard">text to copy 1</a></li> 
<li><a href="#" class="clipboard">text to copy 2</a></li> 
    ... 
    </ul> 

Спасибо!

ответ

0

Не уверен, будет ли это поможет, я не хотел бы попробовать, как это:

$("body").undelegate('ul.detail_list', "click", function(eventUndelegated) { 
    $('ul.detail_list').delegate("a.clipboard", "click", function(eventDelegated){ 
     eventDelegated.preventDefault(); 
     eventDelegated.stopPropagation(); 
     $(this).zclip({ 
      path:'images/ZeroClipboard.swf', 
      copy:$(this).text(), 
      afterCopy:function(){ 
       window.open('....'); 
      }, 
      clickAfter: false 
     }); 
    }); 

}); 
+0

забыл упомянуть ul.detail_list это фрагмент кода HTML, который генерируется после того, как ответ JSon ... поэтому не идут с этим кодом ... – Mission

+0

, поэтому вы хотите сначала остановить функцию щелчка на 'ul.detail_list' с помощью undelegate, а затем настроить другой щелчок на элементах' a.clipboard' с делегатом. не могли бы вы улучшить вопрос с помощью некоторого HTML, чтобы стало понятнее, что вы пытаетесь сделать? – tusar

Смежные вопросы