2010-02-04 4 views
0

Я привязываю событие click к изображению, используя привязку JQuery Live. В первый раз, когда я нажимаю на изображение, простое всплывающее меню запускается и перетаскивается. После этого простейшее всплывающее окно все еще запускается, и перетаскиваемый элемент не будет перетаскиваться. Есть идеи?JQuery Live и Draggable

Кода Живого Click Event:

$("table tr td img:not(.Help)").live("click", function(){ 

    $("#draggable").draggable({ 
     containment: 'parent', 
     drag: function(e, ui){ 
      alert("dragging"); 
     } 
    }); 

    $("#modal").modal({ 
     onShow: function(){ 
      $("html").css("overflow", "hidden"); 
     }, 
     onClose: function(){ 
      $("html").css("overflow", "auto"); 
      $("table tr td img").live("click", function(){}); 
      $.modal.close(); 
     } 
    }); 
}); 
+0

Предложение: отредактируйте ваше сообщение, выберите свой код и нажмите кнопку «Пример кода» над текстовой областью. – sberry

ответ

3

В случае, если кто-то ищет это в будущем решения было поставить «перемещаемый» код в OnShow обратного вызова.

$("table tr td img:not(.Help)").live("click", function(){ 

    $("#modal").modal({ 
     onShow: function(){ 
      $("#draggable").draggable({ 
       containment: 'parent', 
       drag: function(e, ui){ 
        alert("dragging"); 
       } 
      }); 
      $("html").css("overflow", "hidden"); 
     }, 
     onClose: function(){ 
      $("html").css("overflow", "auto"); 
      $("table tr td img").live("click", function(){}); 
      $.modal.close(); 
     } 
    }); 
});