javascript – 拖放背后的逻辑

我想知道“它是如何工作”和“如何设计和实施”的基本拖拽和丢弃功能.

我还没有实现过这样的功能.我打算为我的一个项目这样做,我对如何实现它有一些想法.我想确保自己走在正确的道路上,并且你们很可能也有人对此事有所说明……

让我们想象一下,我有5个元素列出如下并从数据库中获取;

<div id="1">this is content for 1</div>
<div id="2">this is content for 2</div>
<div id="3">this is content for 3</div>
<div id="4">this is content for 4</div>
<div id="5">this is content for 5</div>

因为这是从数据库中删除的,所以我们知道它有一个名为“sequence”或“order”的字段来区分我们要输出的顺序.我们还想象当前“序列”列的值与div的ID相同.所以:分别为1,2,3,4和5.

我的问题和想法;

如果我拖动div 4并将其放在1和2之间;那里的步骤是什么?例如:

1)确定被拖动的div的id(让我们称之为div-a)

2)确定在这种情况下之后(或之前)插入div-a的div的id,因此在div id 1之后(让我们称之为div-b)

3)更新db中的div-a序列并将其设置为div-b的当前序列

在这一步之后,我感到很困惑……我是否计算了所有的div,并且根据哪个div命令,我是否相应地更新数据库?或者我完全错了,还有另一种方式吗?

谢谢你的答案,但我知道有插件和其他东西来完成这个,但我只对它的逻辑部分感兴趣..

最佳答案 我相信jquery会为你提供一种基于id获取订单的方法吗?

我一直在做的方式是每次动作发生时,抓住当前的订单,通过ajax将其发送回我的应用程序.然后我的应用程序只是从它给出的内容中解析出来并更新每个项目的订单值.

点赞