2012-04-24 103 views
3

我使用由ThreeDubMedia(here)構建的拖放應用程序jQuery.event.drop。如果我閱讀正確,只有添加全局選項的方法。jQuery.event.drop使用多個配置

我對這個插件有不同的用例,需要不同的配置。

例如在應用程序的一個組成部分,我現在用的是多選項

$.drop({ 
    multi: true 
}); 

在同一頁上,只是在另一個div我需要禁用多和設置模式:真 - 用這樣的

$.drop(
{ 
    mode:true, 
    multi: false 
}); 
一個配置

當執行這段代碼時,舊的配置被重寫,並且多拖放將不再起作用 - 除非我再次覆蓋它。

有關如何使用多個配置的任何想法?

回答

3

想出了一點「哈克解決方案」。 我現在使用拖動「開始」事件將配置替換爲當前拖動&拖放操作所需的配置。

事情是這樣的:

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

    // ... 
}) 

不是很漂亮,但至少它的工作原理。 如果您有其他解決方案,請分享!