大家好,我有一个拖放功能,在拖放时我调用了一个用于数据绑定的函数
function droppable(selector)
{
$("#dock").droppable({
drop: function(event, ui) {
var container=this;
GetAppender(ui.draggable,container);
AppendData();
}
});
}
GetAppender(obj,container)
{
var Appender="";
var ID= $(obj).attr('id');
switch(ID){
case '1':
$(container).append('<div id="images"></div>');
break;
case '2':
$(container).append('<div id="tabs"></div>');
}
//there may be several cases not only these two
}
function AppendData()
{
if($('#images').length){ loadimages();}
if($('#tabs').length){ loadimages();}
//there are several funcitons to be loaded
}
以上是我在这里使用的拖放功能,我担心的是,当我拖放和图像时,它会在 switch case 中转到案例 1 并将该 div 附加到拖放区域.. 然后在我的拖放功能中,我有 AppendData( ) 函数,我在其中检查元素长度是否存在具有图像 id 的 div 我正在执行 loadimages 函数
在此之后,如果首先我删除图像并在我的附加数据中,因为图像 div 的长度存在,则执行此方法 if($('#images').length){ loadimages();}
当我现在放下另一个选项卡时,问题开始了,已经有一个带有图像长度的 div,所以当我放下另一个时,两个条件的长度都满足并且我的函数 AppendData() 中的两个方法都被执行......任何人都可以帮我解决请问这个问题。。