追加' Draggable '在' dropable '之后
Append `Draggable` after `Droppable`
我有一个简单的html布局:
<div class="row">
<div class="element">First Box</div>
<div class="element">Second Box</div>
<div class="element">Third Box</div>
</div>
<div style="display:none">
<div class="drop">Drop Here</div>
</div>
我的目标是使元素可拖拽,以便可以改变它们的顺序。我开始为每个元素添加一个Drop元素,在本例中是.drop
:
$('.element').each(function(){
$(this).after($('.drop').first().clone());
});
然后把元素设置为可拖拽的,把拖放的设置为可拖放的:
$('.element').draggable({
stack: '.element',
cursor: 'move',
revert: true
});
$('.drop').droppable( {
accept: '.element',
hoverClass: 'hovered',
drop: handleCardDrop
});
它基本上工作,但我的问题出现在drop处理程序:
function handleCardDrop( event, ui ){
$(this).after(ui.draggable);
ui.draggable.draggable( 'option', 'revert', false );
};
我想把拖的.element
添加到可放元素之后,这样我仍然可以在那里添加另一个元素。此外,.element
不是直接添加在.drop
元素之后,而是附加在文档中的某个地方:自己查看:http://jsfiddle.net/R8kw6/3/
谢谢你的帮助!
看来你的.element
s是相对位置的。因为我没有看到任何css,所以我假设是jquery在做这个调整。放置物品后,相对位置不会重置。在调试控制台中手动关闭它可以解决您的问题。
这就是导致问题的原因。
相关文章:
- electronic BrowserWindow的最小高度和宽度在hide()show()方法之后不起作用
- 在chrome.tabs.onCreated之后加载HTML页面
- 在Jquery detachment()和appendTo()之后定位元素
- AngularJS:ng之后,重复$scope值未按预期更新
- 为什么元素的宽度在页面加载之后和那一刻之后不同
- 没有在Angular应用程序中定义firebase(在firebase迁移之后)
- Javascript复选框函数:;缺少:在属性id之后"
- 在刚刚调用的append函数之后,jquery.height()不会返回实际值
- 正在链接添加了以下内容::在之后
- JQuery hide()在show()之后不起作用,反之亦然
- 未执行Ajax循环的Javascript之后的代码
- 如何在`window.open`之后执行回调
- 如何在一个元素动画之后延迟
- 在XMLHttpRequest之后重新初始化jQuery
- <text区域>在我的html中包含event.keycode==13之后,wrap就不起作用了
- 在jAlert之后设置焦点
- 在Javascript中的ajax响应之后未调用Dropdown事件
- web浏览器中的离线应用程序存储数据并在之后上传
- jQueryUI-将draggable移回原始位置,即使在放入dropable之后也是如此
- 追加' Draggable '在' dropable '之后