问题描述
不用太具体,大概思路就可以了比如有5条记录,有字段title,id,sort_id,按下面的结构输出<div><div>title1</div><div>title2</div><div>title3</div><div>title4</div><div>title5</div></div>当我使用javascript拖动调整上面结构的时候,比如3拖到1前面,3变成排第1,2变成排第3,1变成排第2,其他不变。如何将这个顺序写入sort_id,当然可以每一条数据都修改一次,但感觉不太效率,比如4跟5的顺序没变,没必要去修改,有什么更好的算法吗?
解决方案
解决方案二:
引用楼主greedisgood5000的回复:
不用太具体,大概思路就可以了比如有5条记录,有字段title,id,sort_id,按下面的结构输出<div><div>title1</div><div>title2</div><div>title3</div><div>title4</div><div>title5</div></div>当我使用javascript拖动调整上面结构的时候,比如3拖……
首先确定步骤有2个步骤step1:dom树上真实位置移动varparent=div3.parentNode;parent.removeChild(div3);parent.insertBefore(div3,divX);//divX是你要插入到某个div的位置,这个divX是在你松开鼠标时从事件对象中获得event.targetstep2:仅遍历位置发生变化的dom元素,并更改其sort_id场景1:div3是从后向前插入,则遍历divX-->div3之间,将其sort_id更改场景2:div3是从前向后插入,做法一样,改成遍历div3-->divX
时间: 2024-07-29 14:59:52