Jquery Live и Draggable - PullRequest
       15

Jquery Live и Draggable

0 голосов
/ 04 февраля 2010

Я привязываю событие click к изображению, используя привязку Jquery Live. Когда я нажимаю на изображение в первый раз, запускается всплывающее окно simplemodal, и оно работает отлично. После этого всплывающее окно simplemodal по-прежнему запускается, а перетаскиваемый элемент не перетаскивается. Есть идеи?

Код события Live Click:

$("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();
        }
    });
});

1 Ответ

3 голосов
/ 05 февраля 2010

В случае, если кто-то ищет это в будущем, решением было поместить «перетаскиваемый» код в обратный вызов 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(); 
        } 
    }); 
}); 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...