jQuery.event.drop使用多个配置

时间:2012-04-24 07:58:43

标签: javascript jquery-plugins drag-and-drop

我正在使用ThreeDubMedia(here)的jQuery.event.drop来构建拖放应用程序。如果我读得正确,只有添加全局选项的方法。

我对这个插件有不同的用例,需要不同的配置。

e.g。在应用程序的一部分中,我使用的是多选项

$.drop({ 
    multi: true
});

在同一页面上,只是在另一个div中,我需要禁用多个和设置模式:true - 使用类似的配置

$.drop(
{ 
    mode:true,
    multi: false
});

执行这段代码时,旧的配置会被重写,多次拖放将不再起作用 - 除非我再次覆盖它。

关于如何使用多个配置的任何想法?

1 个答案:

答案 0 :(得分:3)

想出了一个“hacky解决方案”。 我现在正在使用拖动“开始”事件来将配置替换为当前需要的拖动和放大器。放下行动。

这样的事情:

$("#myel").drag("start",function( ev, dd ){

    // Replace config

    $.drop({ 
        multi: true,
        mode: "overlap",
    });

    // ... 
})

另一个拖拽绑定:

$("#myel2").drag("start",function( ev, dd ){

    // Replace config

    $.drop({ 
        multi: false,
        mode: true,
    });

    // ... 
})

不是很漂亮,但至少它有效。 如果您有其他解决方案,请分享!