我正在开发一个可视化编辑器,它需要用户可以随意添加,删除和拖动的元素.每个元素都是div用jQueryUI创建的.新元素将附加到div表示工作空间的父级.每个元素本身都有一个按钮可以将其删除.一切都很好.
我遇到的问题是当我删除一个不是最近创建的元素时,所有其他可拖动元素都会改变位置.这似乎是由使用relative定位的可拖动元素引起的.
目前,我的删除功能只是调用$('#item-x').remove().还有另一种方法我应该删除可拖动的元素吗?
当放置/放置元素(通过从一个 DIV 拖到另一个 DIV)然后在放置的 DIV 中移除一个元素时,其中一些正在改变位置。
这是一个测试场景:http : //jsfiddle.net/TcYHW/8/
和主要代码:
<div id="dropwin"></div>
<div id="dragables">
<div id="d1" class="d"></div>
<div id="d2" class="d"></div>
<div id="d3" class="d"></div>
<div id="d4" class="d"></div>
</div>
$(".d").draggable({
containment: '#dropwin',
stack: '#dragables div',
cursor: 'move',
});
Run Code Online (Sandbox Code Playgroud)
我怎样才能避免这种情况?
我发现,元素被放置在相对于起始位置的位置。即使有一些被移除,我怎样才能让它们粘在掉落的位置?
我发现了两个几乎相似的问题,但没有令人满意的答案: