javascript - jQuery - 在 DIV/或可排序元素中拖动元素

标签 javascript jquery css

我在将一个 div 拖入另一个 div 元素时遇到问题。

HTML 看起来像这样:

<div id="grid">
    <div id="el1" style="width:300px"></div>
    <div id="el2" style="width:100px"></div>
    <div id="el3" style="width:100px"></div>
    <div id="el4" style="width:100px"></div>
</div>

所有元素都是可拖动的,并且具有 css 样式 float:left;position:relative;。 当我将 el1 拖到 el3 的位置时,它会起作用,但它当然会与元素 el3 重叠。 draggin jquery draggable 工作正常,但我想在此位置的 HTML 代码中插入 ID 为 el1 的 div。

它看起来像这样:

<div id...>
    <div id="el2...
    <div id="el3...
    <div id="el1...
    <div id="el4...
</div>

我现在的问题是,这是一个网格。 el1 的宽度为“300”,其他宽度均为“100”。将 el1 拖到 el3 的位置应该交换 el2el3el4el1el1el2, el3, el4 的位置。

要获得此行为,我认为我需要将 div HTML 代码移到 el4 之后。但是如何确定哪个元素是最近的呢?

-------- 已更新--------

我尝试使用 sortable... 参见此处 http://jsfiddle.net/vwK5e/2/ 但是,如果您将红色框放在数字 3 上,红色框将在第二行(正确)但数字 4 应该紧挨着数字 3,因为这是空白。

TIA frgtv10

最佳答案

关于javascript - jQuery - 在 DIV/或可排序元素中拖动元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11539224/

相关文章:

javascript - 如何在 firebase 的 authStateObserver 中调用 .isNewUser()

javascript - 延迟加载 addthis 脚本? (或延迟加载依赖于已触发事件的外部 js 内容)

javascript - 如何在单击时交换图像并在单击时或在其他地方单击时显示它?

html - 在 Bootstrap 3 轮播错误上滑动

html - 如何在屏幕分辨率发生变化时调整导航栏的内容

javascript - Reactjs 使用 setState 还是 setProps 效率更高?

javascript - Vue mousemove 仅在 mousedown 之后

javascript - jQuery keyup 延迟

jquery - 如果稍后添加元素,mdl-js-textfield 将不起作用

html - 多列 ul 中相同高度 li