代码之家  ›  专栏  ›  技术社区  ›  Jon

jquery活动和可拖动

  •  0
  • Jon  · 技术社区  · 15 年前

    我正在使用jquery live binding将一个单击事件绑定到一个图像。第一次单击该图像时,SimpleModal弹出窗口启动,Draggable工作正常。之后,SimpleModal弹出窗口仍在启动,Draggable项将不会被拖动。有什么想法吗?

    实时点击事件代码:

    $("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 回复  |  直到 15 年前
        1
  •  3
  •   Jon    15 年前

    如果将来有人要找这个,解决方案是将“draggable”代码放到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(); 
            } 
        }); 
    });