私の要素のスタイリングは、要素の順序に依存します。ヘルパーを非表示にドラッグしている間、jQuery UI は元のアイテムを保持するため、非表示の要素はスタイリングを壊します。ui.item
ドラッグイベントの開始時に削除できます。ただし、要素を削除した後に要素を復元するにはどうすればよいですか?
HTML
<ul>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
</ul>
CSS
ul { height: 50px; }
li { float: left; width: 50px; height: inherit; background: #ccc; margin: 0 10px 0 0; }
li.placeholder { background: #f00; }
li:nth-child(1):before { content: '1'; }
li:nth-child(2):before { content: '2'; }
li:nth-child(3):before { content: '3'; }
li:nth-child(4):before { content: '4'; }
li:nth-child(5):before { content: '5'; }
JavaScript
$('ul').sortable({
helper: 'clone',
placeholder: 'placeholder',
start: function (e, ui) {
console.log(ui.item.remove()); // temporary remove
},
beforeStop: function (e, ui) {
// how to bring the item back?
}
});