0

我的可拖动元素有一点问题,担心它附加到多个可放置的 div 上。我想编写代码,以便我可以附加到任何可放置的 div 而不影响任何其他可放置的 div。我想我所要做的就是包括我想成为可放置 div 的盒子的 id,这样就可以了。

$('#sortcard, #dropbox, #dropbox1').droppable({accept:'.sorting', hoverClass:'border', tolerance: 'touch',
    drop: function (e, ui){
    $('#sortcard, #dropbox,#dropbox1').append(ui.draggable.html() + '<br/>');
    $("#add_friend").show().fadeOut(12000);
    }
    });

但正如这里看到的问题是,当只有一个盒子被触摸时,所有的 div 都会受到影响。我很乐意并且很感激知道如何解决这个问题以及不再犯这个错误的知识以及任何其他提示。

4

2 回答 2

2

你的问题是这里的这一行:

$('#sortcard, #dropbox,#dropbox1').append(ui.draggable.html() + '<br/>');

这意味着将其附加到所有这些元素。也许您应该使用$(this)or$(e.target)来代替选择器。这意味着它只会附加到被拖放的元素上。

于 2012-11-01T06:25:56.447 回答
0

使用这个....这是小提琴

http://jsfiddle.net/Kxtvg/83/

改变了

$('#sortcard, #dropbox,#dropbox1').append(ui.draggable.html() + '<br/>');

$(this).append(ui.draggable.html() + '<br/>');

您将 html 附加到所有提到的元素$('#sortcard, #dropbox,#dropbox1')。使用$(this)只会将内容拖放到选定的元素

于 2012-11-01T06:35:55.630 回答