添加元素后重新初始化jQuery UI droppable

时间:2013-03-09 20:15:06

标签: jquery jquery-ui jquery-ui-droppable

我有一些页面加载的元素是可放置的。在某些方面,我添加了更多这些元素(相同的选择器),我希望新元素也可以放置。是唯一一个使用所有选项调用原始droppable函数的选项吗?你看,droppable函数调用非常大,我真的不想以这种方式复制代码。有更优雅的方式吗?

这是澄清的代码:

$('td:not(.td-disabled)').droppable({
        hoverClass: "ui-state-active",
        drop: function( event, ui ) {
            // ... very big block of code 
        }
    });
$('.td-disabled').removeClass('td-disabled');

// I dont want to do this:
$('td').droppable({
            hoverClass: "ui-state-active",
            drop: function( event, ui ) {
                // ... very big block of code 
            }
        });

1 个答案:

答案 0 :(得分:1)

您可以尝试:

var hoverCls = 'ui-state-active';
var dropFn = function(event, ui) {

};

$('td').droppable('destroy').droppable({
   hoverClass: hoverCls,
   drop: dropFn
});