jQuery Sortable()与原始位置占位符?

Ed *_*mes 3 jquery jquery-ui-sortable

是否有任何方法可以让jQuery可排序列表显示一个占位符,以便在您将一个项目拖出来进行排序时初始项目的位置?

即,当用户去我的列表中的一个LI时,我想要一个矩形轮廓来显示他们拖动的那个来自哪里.

bra*_*ahn 9

简短版本:您可以使用sortable的start事件处理程序来显示原始项目,并根据需要修改其外观.例如:

$(listOfStuff).sortable({
  start: function (e, ui) { 
    ui.item.show().addClass('original-placeholder');
  });
Run Code Online (Sandbox Code Playgroud)

有了上述内容,当用户开始拖动时,不是原始项目消失,而是保持其原始位置,它将获得"原始占位符".

发生了什么事(据我所知):

  • start功能在用户开始拖动时运行.
  • 当用户开始拖动时,原始项目实际上没有移动,它只是隐藏.(ui.helper是用户拖动的单独对象).通过调用ui.item.show(),你可以保持透露.(好吧,从技术上讲,它会被隐藏,然后立即被隐藏,但我看不到任何闪烁.)
  • 然后你可以根据自己的内容修改ui.item.在上面的例子中,我刚添加了一个类,但您可以替换其内部HTML等.

我对内部人员并不是特别熟悉,但我想其他人可能会更多地谈论推动这种技术的程度.